如何在 ZF2 上设置默认表单错误装饰器?我想在错误html上设置自定义类怎么办?
2 回答
            1        
        
		
ZF2 中不再有装饰器。你正在看的东西叫做ViewHelpers. 这实际上在官方文档中进行了解释(甚至不止一次)。
这将是您正在查看的代码:
/**
 * Example #1: Default options
 */
echo $this->formElementErrors($element);
// <ul><li>Value is required and can't be empty</li></ul>
/**
 * Example #2: Add attributes to open format
 */
echo $this->formElementErrors($element, array('class' => 'help-inline'));
// <ul class="help-inline"><li>Value is required and can't be empty</li></ul>
/**
 * Example #3: Custom format
 */
echo $this->formElementErrors()
          ->setMessageOpenFormat('<div class="help-inline">')
          ->setMessageSeparatorString('</div><div class="help-inline">')
          ->setMessageCloseString('</div>')
          ->render($element);
这显然是针对每个元素的。
于 2013-04-26T21:20:27.403   回答
    
    
            1        
        
		
正如 Sam 已经说过的,这将是编写新 ViewHelper 的正确方法。但你也可以调用setMessageOpenFormat()Module.php 文件:
$serviceManager = $e->getApplication()->getServiceManager();
$viewHelperManager = $serviceManager->get('viewhelpermanager');
$formElementErrorsViewHelper = $viewHelperManager->get('FormElementErrors');
$formElementErrorsViewHelper->setMessageOpenFormat('<div class="error"><ul%s><li>');
$formElementErrorsViewHelper->setMessageCloseString('</li></ul></div>');
    于 2013-09-17T13:13:09.707   回答