Mal*_*yer 2 php zend-framework decorator zend-form zend-decorators
我正在尝试在zend_form显示组中生成此html层次结构:
<div class="settings">
<div class="dashed-outline"> //want to add this div
<fieldset disabledefaultdecorators="1" id="fieldset-settings">
<legend>Cards</legend>
</fieldset>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
这就是我目前所拥有的:
<div class="settings">
<fieldset disabledefaultdecorators="1" id="fieldset-settings">
<legend>Cards</legend>
</fieldset>
</div>
Run Code Online (Sandbox Code Playgroud)
这是上面的代码:
$form->addDisplayGroup($flashcardGroup,
'settings',
array(
'legend' => 'Cards',
'disableDefaultDecorators' => true,
'decorators' => array(
'FormElements',
'Fieldset',
array('HtmlTag',array('tag' => 'div', 'class' => 'settings')),
)
)
);
Run Code Online (Sandbox Code Playgroud)
如何在这里添加额外的div?
如果要在Zend_Form中使用相同的装饰器两次,则可以array(array('alias'=>'Decorator'), $options)使用setDecorators数组语法进行传递.此外,disableDefaultDecorators如果您通过decorators选项,则不需要使用
$form->addDisplayGroup($flashcardGroup,
'settings',
array(
'legend' => 'Cards',
'decorators' => array(
'FormElements',
'Fieldset',
// need to alias the HtmlTag decorator so you can use it twice
array(array('Dashed'=>'HtmlTag'), array('tag'=>'div', 'class'=>'dashed-outline')),
array('HtmlTag',array('tag' => 'div', 'class' => 'settings')),
)
)
);
Run Code Online (Sandbox Code Playgroud)