sam*_*old 5 php zend-framework zend-form zend-form-element
我有一个下拉菜单Element_Select,我正在变成一个自定义元素,Element_SelectCustom以便我可以直接用值填充它.这是自定义元素
<?php
require_once ('Zend/Form/Element/Select.php');
class Zend_Form_Element_SelectCustom extends Zend_Form_Element_Select
{
public function init() {
$this->addMultiOptions(array(
'NULL' => 'Choose Value',
'1' => 'First',
'2' => 'Second',
'3' => 'Third',
));
return parent::init();
}
Run Code Online (Sandbox Code Playgroud)
问题是,当我将新的自定义元素添加到表单并将其设置为required时,当我不选择值时,它不会触发错误.
$test = new Zend_Form_Element_SelectCustom('test');
$test->setRequired(true);
$this->addElement($test);
Run Code Online (Sandbox Code Playgroud)
我不知道它有什么问题.是否可能需要重新启动另一种方法?
你必须更改'NULL'为NULL. 第一个是内容为“NULL”的字符串,后者是空值。空字符串''也应该没问题。
public function init()
{
$this->addMultiOptions(array(
NULL => 'Choose Value', // '' => 'Choose Value'
'1' => 'First',
'2' => 'Second',
'3' => 'Third',
));
return parent::init();
}
Run Code Online (Sandbox Code Playgroud)