Zend framework2 Zend\Form自定义HTML标记

Zend framework2 Zend\Form自定义HTML标记,zend-framework2,zend-form2,Zend Framework2,Zend Form2,需要一个关于如何创建自定义HTML标记(如Zend 1上的表单装饰器)的教程。 我想生成如下内容: <ul> <li> <label class="required"><span>*</span> Username</label> <input id="username" name="username" type="text"> </li> <li> <lab

需要一个关于如何创建自定义HTML标记(如Zend 1上的表单装饰器)的教程。 我想生成如下内容:

<ul>
<li>
    <label class="required"><span>*</span> Username</label>
    <input id="username" name="username" type="text">
</li>
<li>
    <label class="required"><span>*</span> Password</label>
    <input id="password" name="password" type="password">
</li>
</ul>
  • *用户名
  • *密码

假设表单元素被命名为
用户名
密码
,下面的示例将给出所需的输出

<?php
// attributes to apply to label(s)
$labelAttr = array('class' => 'required');
// extra label content (assumes Username and Password are already present in the given elements)
$labelSpan = '<span>*</span> ';
// set the label attributes
$form->get('username')->setLabelAttributes($labelAttr);
$form->get('password')->setLabelAttributes($labelAttr);
?>

<ul>
<li>
    // use the formLabel helper, hand it the extra label content, and tell it to place the existing label after it
    <?php echo $this->formLabel($form->get('username'), $labelSpan, 'append');
    <?php echo $this->formInput($form->get('username');
</li>
<li>
    <?php echo $this->formLabel($form->get('password'), $labelSpan, 'append');
    <?php echo $this->formInput($form->get('password');
</li>
</ul>

  • //使用formLabel帮助器,将额外的标签内容交给它,并告诉它将现有标签放在它之后
    您只需实现自己的视图帮助程序来处理此类标记。就这么简单:)