【发布时间】:2012-04-15 09:59:33
【问题描述】:
我有一个场景,我要添加多个资格,我将值保存在隐藏字段中,例如
$("<input/>",{type:'hidden',value:deg,name:'degree[]'}).attr("data-deg",deg).appendTo("form");
$("<input/>",{type:'hidden',value:year,name:'year[]'}).attr("data-year",year).appendTo("form");
$("<input/>",{type:'hidden',value:inst,name:'inst[]'}).attr("data-inst",inst).appendTo("form");
如果我执行 var_dump,它会显示以下输出
["degree"]=> array(2) { [0]=> string(4) "M.Sc" [1]=> string(4) "B.Sc" }
在控制器中我得到它就像
$Degree = $form->getValue('degree[]');
但是 var_dump($Degree) 给我 NULL,我怎样才能得到值请帮助
编辑
这是我的表单看起来像
$degreename = $this->createElement('select', 'degreename')
->setRequired(true);
$degreename->removeDecorator('label');
$degreename->removeDecorator('htmlTag');
$degreename->removeDecorator('Errors');
$ddloptions = $this->db->GetDegrees();
$degreename->setMultiOptions($ddloptions);
$degreename->addMultiOptions(array(
'0'=>'--Select Degree--'
));
$degreename->setValue(0);
$passingyear = $this->createElement('select', 'passingyear')
->setRequired(true);
$passingyear->removeDecorator('label');
$passingyear->removeDecorator('htmlTag');
$passingyear->removeDecorator('Errors');
$passingyear->addMultiOptions(array(
'0'=>'--Select Passing Year--',
'1950'=>'1950',
'1951'=>'1951',
'1952'=>'1952',
)
);
$passingyear->setValue('0');
$institute = new Zend_Form_Element_Text('institute');
$institute->setRequired(false)
->addFilter('StripTags')
->addFilter('StringTrim');
$institute->removeDecorator('label');
$institute->removeDecorator('htmlTag');
$institute->removeDecorator('Errors');
虽然 degreename 和 passing year 是必需的,但它们始终具有值 0 institute 我已设置为 false 用户可以添加多个资格,并且在每个用户选择时我添加一个隐藏字段,例如如上所示
【问题讨论】: