我有一个有 2 个选择的表格。根据第一个选择的值,它使用 AJAX 更新第二个选择的值。这样做会使表单无效。所以,我做了下一个改变:
$form=$this->getAddTaskForm(); //the form
if(!$form->isValid($_POST)) {
$values=$form->getValues();
//get the options and put them in $options
$assignMilestone=$form->getElement('assignedMilestone');
$assignMilestone->addMultiOptions($options);
}
if($form->isValid($_POST)) {
//save in the database
}else {
//redisplay the form
}
基本上,我检查它是否有效,如果用户更改了第一个选择的值,则不是。我得到填充第二个选择的选项并用它们填充表单。然后我尝试再次验证它。但是,这不起作用。任何人都可以解释为什么?存在相同的“在大海捞针中找不到值”。