Ai fini dello stile, ho la necessità di inserire un'apertura <div>
all'inizio di un elemento e un tag di chiusura </div>
alla fine di un altro. Guardando oltre i documenti per HtmlDecorator non riesco a capire come farlo bene, o se questo è anche il decoratore giusto da usare. Sembra inutile dover creare il mio decoratore semplicemente per raggiungere questo obiettivo.Aggiunta o sospensione di tag HTML a Zend Form Element
risposta
Sulla elemento in cui si desidera aggiungere un <div>, aggiungere questo decoratore:
array(
array('openDiv' =>'HtmlTag'),
array('tag' => 'div', 'openOnly' => true)
)
Sulla elemento in cui si desidera aggiungere un </div >, aggiungere questo decoratore:
array(
array('closeDiv' =>'HtmlTag'),
array('tag' => 'div', 'closeOnly' => true)
)
Suoni come si potrebbe usare un display group con un decoratore HtmlTag
.
Qualcosa di simile:
$form = new Zend_Form();
$form->addElement('text', 'elt1', array(
'label' => 'Element 1',
));
$form->addElement('text', 'elt2', array(
'label' => 'Element 2',
));
$form->addDisplayGroup(array('elt1', 'elt2'), 'myDisplayGroup');
$group = $form->getDisplayGroup('myDisplayGroup');
$group->setDecorators(array(
'FormElements',
array('HtmlTag', array('tag' => 'div', 'class' => 'myClass'))
));
Questo produce HTML come segue:
<form method="post" action="" enctype="application/x-www-form-urlencoded">
<dl class="zend_form">
<div class="myClass">
<dt id="elt1-label"><label class="optional" for="elt1">Element 1</label></dt>
<dd id="elt1-element"><input type="text" value="" id="elt1" name="elt1"></dd>
<dt id="elt2-label"><label class="optional" for="elt2">Element 2</label></dt>
<dd id="elt2-element"><input type="text" value="" id="elt2" name="elt2"></dd>
</div>
</dl>
</form>
Naturalmente, inceppamenti un <div> tag all'interno di tutto ciò che <dl>, <dt> e <dd> la follia produce un markup non valido, ma presumo che tu stia specificando decoratori diversi per i tuoi elementi di forma in modo che th e <div> avvolgere il tuo desiderio alla fine sarà valido.
Notevole anche per manipolazioni di markup più generali è AnyMarkup Decorator.
DavidW, grazie per l'ottimo esempio. Ho completamente dimenticato di usare i gruppi di visualizzazione. – ashurexm
Il mio piacere ;-) –
- 1. Zend File Upload e Element Decorators
- 2. Aggiunta di tag html personalizzati a Intellij?
- 3. Form Zend setRequired (true) o addValidator (NotEmpty)
- 4. Aggiunta di tag CSS personalizzati a un documento html RMarkdown
- 5. jQuery get element per tag di ruolo
- 6. Come aggiungere Captcha in Zend Form?
- 7. Zend Form SetAction Using Named Routes
- 8. HTML Element Array, name = "something []" o name = "something"?
- 9. HTML float right element
- 10. Javascript shake html element
- 11. HTML form nome tag elemento array con JavaScript
- 12. attributo personalizzato su HTML Element
- 13. Netti tag HTML in html
- 14. tag di download html
- 15. BeautifulSoup - aggiunta attributo al tag
- 16. Elimina tag html in sed o simili
- 17. Django-tables2 - aggiunta dinamica di colonne alla tabella - non aggiunta attrs al tag table in html
- 18. Confronta XML element element order
- 19. Aggiunta di route basate su domini subordinati in Zend framework
- 20. validazione W3C per lato server tag form
- 21. Forme personalizzate di Zend Framework con viewScript
- 22. Tag HTML rel
- 23. Tag di ancoraggio HTML con tag italico
- 24. inviare form HTML sulla pagina di auto
- 25. Aggiunta di dati ai tag XHTML
- 26. Aggiunta percorso personalizzato al controller Zend REST
- 27. Yii2 come mappare il tag di ancoraggio HTML nel tag yii2 html :: a()
- 28. tag html nei tag di opzione
- 29. form HTML Redirect Dopo Invia
- 30. Form in Notifiche HTML Webkit?
Questo è esattamente quello che sto cercando in questo caso particolare, grazie! – ashurexm