Zend表单字段将Validator设置为无效

时间:2011-06-22 09:24:16

标签: php zend-framework forms validation

如何将Form Field设置为无效?

示例:

$form->getElement('name')->set.... Validator to FALSE

或类似的东西???

部分代码:

    if(....){
    $form->getSubForm('sub_form_name')->getElement('element_name')->addError('some error message');
    }


    if($form->isValid($this->getRequest()->getPost())) {
//Form is going to be valid and execute this statment
    }

我也尝试使用:markAsError()和hasError();但没有工作:(

2 个答案:

答案 0 :(得分:2)

如果在元素上使用任何addError ...()或setError ...(),则应将验证标志设置为无效,或者文档说明

Zend_Form_Element.addError(字符串$ message)

添加错误消息并将元素标记为验证失败

答案 1 :(得分:1)

愚蠢的POGramation。 :) 不是最好的方法,但工作正常。

            $vazio = false;
        if(is_array($nomes)){
      $vazio = true; 
              $form->addError("NomeIsArray");
        }

        if(!$vazio && $form->isValid($post)){

            }