2013-04-27 39 views
4

我用這個在我的表格:在Zend中如何禁用InArray校驗形式framework2

$this->add(array(  
    'type' => 'Zend\Form\Element\Select',  
    'name' => 'county', 
    'registerInArrayValidator' => false, 
    'attributes' => array(
     'id' => 'county',     
     'options' => array(
      //'null'=>'[Select county]', 
     ), 
    ), 
    'options' => array(
     'label' => 'county', 
    ), 
)); 

,並用JS設置值縣場。 驗證後,我得到錯誤:草垛選項是強制性

+0

能否請你提高你的問題的格式? – 5ervant 2013-04-27 05:10:15

+1

是@servant。謝謝你 – 2013-04-27 06:09:58

+0

我不確定,但我認爲'registerInArrayValidator'只適用於ZF1。我會制定一個抽象的問題:如何從Form Element ValidatorChain中移除一個驗證器?已經調試了一下,實際上找不到和做到這一點。可能以某種方式通過'ValidatorPluginManager'('$ form-> getInputFilter() - > get('myElement') - > getValidatorChain()> getPluginManager()')... – automatix 2013-04-27 12:14:11

回答

7

的disable_inarray_validator添加到選項:

$this->add(array(
    ... 
    'options' => array(
     'disable_inarray_validator' => true, 
     'label' => 'county', 
    ), 
));