web-dev-qa-db-fra.com

Puis-je changer la façon dont jForm génère du HTML pour les champs de formulaire?

Existe-t-il un moyen de manipuler le code HTML résultant généré par jForm?

$this->form->renderField('myfield');

formulaire HTML par défaut Joomla apparent

<div class="control-group">
    <div class="control-label">
        <label id="jform_myfield-lbl" for="jform_myfield" data-placement="bottom">My Field</label>
    </div>
    <div class="controls">
        <input name="jform[myfield]" id="jform_myfield" value="My Value" class="input-sm" placeholder="Enter a value" aria-invalid="false" type="text">
    </div>
</div>

HTML préféré

<div class="form-group">
    <label for="myfield" class="col-sm-2 control-label">My Field</label>
    <div class="col-sm-10">
        <input class="form-control valid" id="myfield" name="myfield" value="My Value" placeholder="Enter a value" required="" type="text">
    </div>
</div>
1
GDP

Le balisage HTML provient du fichier suivant:

layouts/joomla/form/renderfield.php

Comme il s'agit d'une mise en page, vous pouvez simplement créer un remplacement pour celle-ci. En supposant que vous travailliez avec des composants, copiez le fichier ci-dessus et collez-le dans le répertoire suivant:

composants/com_EXAMPLE/layouts/joomla/form/renderfield.php

Vous pouvez ensuite apporter vos modifications à ce fichier.

J'espère que cela t'aides

1
Lodder