zen*_*n.c 3 php zend-framework zend-form zend-validate zend-form-element
我在forms/video.php中有以下代码片段.但我不知道在哪里添加验证消息所需.
$this->addElement('text','name', array(
'label'=>'Name',
'maxlength'=>20,
'class'=>'name',
'required'=>true,
'filters'=>array('StringTrim'),
'decorators'=>array(
'ViewHelper',
'Errors',
array(array('control'=>'HtmlTag'), array('tag'=>'div', 'class'=>'fieldcontrol')),
array('Label', array('tag'=>'div', 'class'=>'name')),
array(array('row'=>'HtmlTag'), array('tag' => 'div', 'class'=>'row')),
)
));
Run Code Online (Sandbox Code Playgroud)
我想把它设置为"请输入你的名字"之类的东西,而不是"价值是必需的而且不能为空".
最后,我得到了这个工作:
$this->addElement('text', 'age', array(
'label'=>'Age',
'maxlength'=>2,
'class'=>'age',
'required'=>true,
'filters'=>array('StringTrim'),
'validators'=>array(
array(
'validator'=>'NotEmpty',
'options'=>array(
'messages'=>'Please enter your age.'
),
'breakChainOnFailure'=>true
),
array(
'validator'=>'Int',
'options'=>array(
'messages'=>'Age must be a number.'
),
'breakChainOnFailure'=>true
),
array(
'validator'=>'between',
'options'=>array(
'min'=>8,
'max'=>10,
'messages'=>array(
Zend_Validate_Between::NOT_BETWEEN => 'This is for %min% to %max% years old.'
)
)
),
),
'decorators'=>array(
'ViewHelper',
'Errors',
array(array('control'=>'HtmlTag'), array('tag'=>'div', 'class'=>'fieldcontrol')),
array('Label', array('tag'=>'div', 'class'=>'age')),
array(array('row'=>'HtmlTag'), array('tag' => 'div', 'class'=>'row')),
),
));
Run Code Online (Sandbox Code Playgroud)