0

下面的代码不显示验证消息,我应该在任何地方打印任何变量。请指教。

$username = new Zend_Form_Element_Text('username', array('autocomplete' => 'off'));
        $username->setLabel('Username')
                ->setDecorators($elementDecoration)
                ->setRequired(true)
                ->addFilter('StripTags')
                ->addFilter('StringTrim')
                ->addValidator('NotEmpty', true, array('messages'=>'Cannot be empty'));


$elementDecoration = array(

            'ViewHelper',
            'Description',
            'Errors',
            array(array('data'  => 'HtmlTag'), array('tag' => 'td')),
            array('Label', array('tag' => 'td', 'placement' => 'prepend')),
            array(array('row'   => 'HtmlTag'), array('tag' => 'tr')),
        );
4

2 回答 2

0

尝试这个

$username->setLabel('Username')
                ->setDecorators($elementDecoration)
                ->setRequired(true)
                ->addErrorMessage('Cannot be empty')
                ->addFilter('StripTags')
                ->addFilter('StringTrim');

确保使用的装饰器是正确的。

$element->setDecorators(array(
    'ViewHelper',
    'Description',
    'Errors',
    array(array('elementDiv' => 'HtmlTag'), array('tag' => 'div')),
    array(array('td' => 'HtmlTag'), array('tag' => 'td')),
    array('Label', array('tag' => 'td')),
));
于 2013-03-26T11:28:22.340 回答
0

您想setRequired从元素中删除该功能。这个函数覆盖了NotEmpty验证器。由于您正在检查NotEmpty,您可以删除setRequired以显示您自己的消息。

于 2013-03-26T11:38:34.430 回答