如何使用Zend表单描述添加自定义HTML标记

Aad*_*adi 9 php zend-framework zend-form

考虑我想展示

复选框,复选框标签和之后的图像.

如何使用Zend Engine Form创建相同的视图

我尝试如下

    $this->addElement(
            'Checkbox',
            "$key",
            array(
             'label'=>$value,
                'checkedValue' => "$key",
                'uncheckedValue' => '',
                'checked' => true,
             'disabled' => false,
          )
        );

     $element = $this->getElement($key);         


       $element->setDecorators(
   array(
     'ViewHelper',
     array('Label', array('tag' => 'dt', 'class'=>'hidden')),
     array('Description',array('escape'=>false,'tag'=>' span')), //escape false because I want html output
    )
   );

     $element->setDescription('<img name="help_'.$key.'" id="help_'.$key.'" src="/application/modules/User/externals/images/what-is-this.gif"/>');

$element->setDescription('<img name="help_'.$key.'" id="help_'.$key.'" src="/application/modules/User/externals/images/what-is-this.gif"/>');
Run Code Online (Sandbox Code Playgroud)

但显示复选框,描述图像和复选框标签为上标.

请帮忙

小智 20

$element->getDecorator('Description')->setEscape(false);
Run Code Online (Sandbox Code Playgroud)

这将防止转义描述内容.

  • 知道是否要直接对表单本身($ this)的描述集进行转义也很有用,可以使用$ this-&gt; getDecorator('Description')-&gt; setOption('escape',false);。 (2认同)

Dav*_*aub 2

查看AnyMarkup 装饰器

您可以将该装饰器添加到元素装饰器列表中,并使用 APPEND 位置指定图像的标记。