在ZF1表单和表单元素中有一个setDescription
方法,在视图中输出为<p>description here</p>
....
ZF2似乎没有这种方法
所以我的问题是如何添加描述以形成元素?
这是我的观点:
<div>
<?
$form = $this->form;
$form->prepare();
echo $this->form()->openTag($form);
foreach ($form->getElements() as $el) {
?>
<div class="form_element">
<?=$this->formRow($el);?>
</div>
<?
}
echo $this->partial('system/form/buttons_form_part.phtml', array('form' => $form));
echo $this->form()->closeTag();
?>
</div>
答案 0 :(得分:5)
使用ZF 2.1.5,一个解决方案可能是setOptions()
。
以定义的形式:
$file = new Element\File('file');
$file->setLabel('Photo (.jpg, .gif, .png)');
$file->setOptions(array('description' => 'test description'));
…
渲染表单元素时:
$element = $form->get(…);
var_dump($element->getOptions());
将允许您访问:
array(1) { ["description"]=> string(16) "test description" }
答案 1 :(得分:0)
如果您指的是Element的标签,则可以在创建表单时使用setLabel
方法(在Controller中)。
$name = new Element('name');
$name->setLabel('Your name');
或者,如果您使用数组创建表单元素,请使用以下命令:
array(
'spec' => array(
'name' => 'name',
'options' => array(
'label' => 'Your name',
),
'attributes' => array(
'type' => 'text'
),
)
),
这是一个链接: