Php 如何使用Zend Form Decorator将所有输入和标签放入div?
我的代码如下所示:Php 如何使用Zend Form Decorator将所有输入和标签放入div?,php,zend-framework,decorator,Php,Zend Framework,Decorator,我的代码如下所示: $this->setElementDecorators(array( array('ViewHelper'), array('Errors', array('tag' => 'div', 'class' => 'error')), array('Label', array('tag' => 'span')), array('HtmlTag', array('tag' => 'div')) )); 它给了我: <di
$this->setElementDecorators(array(
array('ViewHelper'),
array('Errors', array('tag' => 'div', 'class' => 'error')),
array('Label', array('tag' => 'span')),
array('HtmlTag', array('tag' => 'div'))
));
它给了我:
<div>
<div id="email-label"><label for="email" class="required">First name:</label></div>
<input type="text" name="email" id="email" value="" />
</div>
<div>
<div id="email-label"><label for="email" class="required">Last name:</label></div>
<input type="text" name="email" id="email" value="" />
</div>
名字:
姓氏:
但我希望所有内容都在具有指定类的div中,如下所示:
<div class="item">
<div class="label"><label for="email" class="required">First name:</label></div>
<div class="element"><input type="text" name="email" id="email" value="" /></div>
</div>
<div class="item">
<div class="label"><label for="email" class="required">Last name:</label></div>
<div class="element"><input type="text" name="email" id="email" value="" /></div>
</div>
<div class="form">
<form method="<?php echo $this->form->getMethod() ?>"
action="<?php echo $this->form->getAction() ?>">
<div class="item">
<?php echo $this->form->firstName ?></div>
</div>
<div class="item">
<?php echo $this->form->lastName ?></div>
</div>
// the rest of your elements...
<?php echo $this->form->submit ?>
</form>
</div>
名字:
姓氏:
我该怎么做?我读了手册,但没有更多的想法:(试试:
$this->setElementDecorators(array(
array('ViewHelper'),
array('Errors', array('tag' => 'div', 'class' => 'error')),
array('Label', array('tag' => 'span')),
array('HtmlTag', array('tag' => 'div', 'class' => 'label')),
));
然后在渲染窗体时,手动渲染它,如下所示:
<div class="item">
<div class="label"><label for="email" class="required">First name:</label></div>
<div class="element"><input type="text" name="email" id="email" value="" /></div>
</div>
<div class="item">
<div class="label"><label for="email" class="required">Last name:</label></div>
<div class="element"><input type="text" name="email" id="email" value="" /></div>
</div>
<div class="form">
<form method="<?php echo $this->form->getMethod() ?>"
action="<?php echo $this->form->getAction() ?>">
<div class="item">
<?php echo $this->form->firstName ?></div>
</div>
<div class="item">
<?php echo $this->form->lastName ?></div>
</div>
// the rest of your elements...
<?php echo $this->form->submit ?>
</form>
</div>
尝试:
然后在渲染窗体时,手动渲染它,如下所示:
<div class="item">
<div class="label"><label for="email" class="required">First name:</label></div>
<div class="element"><input type="text" name="email" id="email" value="" /></div>
</div>
<div class="item">
<div class="label"><label for="email" class="required">Last name:</label></div>
<div class="element"><input type="text" name="email" id="email" value="" /></div>
</div>
<div class="form">
<form method="<?php echo $this->form->getMethod() ?>"
action="<?php echo $this->form->getAction() ?>">
<div class="item">
<?php echo $this->form->firstName ?></div>
</div>
<div class="item">
<?php echo $this->form->lastName ?></div>
</div>
// the rest of your elements...
<?php echo $this->form->submit ?>
</form>
</div>
检查此项:检查此项: