我不明白爲什麼這個複選框與值= 0被populate()
,而沒有數據通過這個選中複選框...Zend_Form的:與值複選框填充問題= 0
我的表單元素:
$this->addElement('multiCheckbox', 'etoiles', array(
'filters' => array('Int'),
'separator' => '',
'label_placement' => 'prepend',
'label_class' => 'caseacocher',
'decorators' => $decorator_chain,
));
$listeEtoiles = array(
'0' =>'Sans étoiles',
'1' => '1 étoile"',
'2' => '2 étoiles',
'3' => '3 étoiles',
'4' => '4 étoiles',
'5' => '5 étoiles',
) ;
$this->getElement('etoiles')->addMultiOptions($listeEtoiles) ;
如何填充表單到我的控制器:
$this->view->searchForm->populate($this->getRequest()->getPost()) ;
我能得到什麼傾倒$this->getRequest()->getPost('etoiles')
時:NULL
爲我的複選框什麼:
<input id="etoiles-0" type="checkbox" checked="checked" value="0" name="etoiles[]">
我不明白這一點。怎樣才能讓這個複選框被選中,而沒有關於etoiles[]
的數據? 我剛纔發現我的「Int」過濾器與它有關。我應該刪除它嗎?如果我想保留這個Int過濾器呢?
沒有驗證器。我應該添加一些嗎?那麼InArray驗證器呢?我的值數組使用字符串索引,因爲我認爲$ _POST數據作爲字符串傳遞。這是一個錯誤嗎?
任何註釋或幫助將不勝感激:)
說實話,這是一個複製/粘貼,我只是爲了說明我的問題。忘了驗證器,沒有驗證器。我應該添加一些嗎?這個'InArray'驗證器呢? 我的值數組使用字符串索引,因爲我認爲'$ _POST'數據是作爲字符串傳遞的。這是一個錯誤嗎? – LittleBigDev