2016-05-31 25 views
0

是否可以获取表单验证器消息标记?将css类添加到ZF中的指定表单验证器消息中

<ul class="error"> 
    <li>Error msg 1</li> 
    <li class="custom">Error msg 2</li> 
</ul> 

随着 '错误' 和 'HtmlTag' 表单装饰我只能作出这样的:

<span class="custom"> 
    <ul class="error"> 
    <li>Error msg 1</li> 
    <li>Error msg 2</li> 
    </ul> 
</span> 

这里是我的元素代码:

$this->addElement('text', 'domain', array(
'label' => $this->getTranslator()->_('Your domain'), 
'attribs' => array(
    'maxlength' => 200, 
    'size' => 30 
), 
'validators' => array(), 
'filters' => array(), 
'required' => TRUE, 
'decorators' => array('Errors', 
     array('HtmlTag', array('tag' => 'span', 'class' => 'custom')) 
    ), 
)); 

谢谢!

回答

0

元素错误默认使用Zend_Form_Decorator_Errorssource)装饰器和Zend_View_Helper_FormErrorssource)查看帮助器呈现。装饰器不支持每个错误行的自定义属性。

要允许每个错误的自定义属性,您首先需要扩展/覆盖Zend_Form_Decorator_Errors#render()方法来检索每个错误的特定选项并将其提供给$view->formErrors($errors, $this->getOptions());。然后您需要重写Zend_View_Helper_FormErrors#formErrors()以将特定属性添加到<li>元素。

相关问题