2010-07-21 3 views
0

J'utilise Zend_Form de Zend Framework 1.10.6 pour rendre un formulaire html. Sous cette forme 'z', il y a un sous-formulaire avec un champ 'a'. Le sous-formulaire est ajouté deux fois au formulaire principal, une fois avec le nom «x» et une fois «y».Zend_Form: ID de décorateur en double sur des sous-formulaires

Voici le code HTML rendu par l'objet Zend_Form.

<form id="z" enctype="application/x-www-form-urlencoded" method="post" action=""> 
<dl class="zend_form"> 
    <dt id="x-label">&#160;</dt> 
    <dd id="x-element"> 
    <fieldset id="fieldset-x"> 
    <dl> 
    <dt id="a-label"><label for="x-a" class="required">A</label></dt> 
    <dd id="a-element"><input type="text" name="x[a]" id="x-a" value="" /></dd> 
    </dl> 
    </fieldset> 
    </dd> 

    <dt id="y-label">&#160;</dt> 
    <dd id="y-element"> 
    <fieldset id="fieldset-y"> 
    <dl> 
    <dt id="a-label"><label for="y-a" class="optional">A</label></dt> 
    <dd id="a-element"><input type="text" name="y[a]" id="y-a" value="" /></dd> 
    </dl> 
    </fieldset> 
    </dd> 

    <dt id="submit-label">&#160;</dt><dd id="submit-element"><input type="submit" name="submit" id="submit" value="Submit" /></dd> 
</dl> 
</form> 

Le seul problème est maintenant que le décorateur standard (<dt>, <dd>) génère des ID en double. Pourquoi ces ID ne sont-ils pas préfixés avec le nom du sous-formulaire et un tiret, comme les ID des champs de saisie?

Répondre

0

Je ne sais pas pourquoi ils ne sont pas préfixés mais pour contourner le problème, je définirais mes propres décorateurs personnalisés sur les éléments. Cet article peut vous aider http://devzone.zend.com/article/3450

Questions connexes