如何禁用html5验证?(保留后验证)(zend framework 2)

时间:2013-07-18 09:07:39

标签: html5 validation zend-framework zend-framework2

我正在使用select2插件,所以如果我在客户端(html5)有错误,它会显示我在错误的位置,因为select2插件。(元素的位置)

我想仅针对一个特定元素禁用html5验证,但保留帖子验证。

$inputFilter = new InputFilter();   
 $this->add(array(
                'name' => 'supplierName',
                'type' => 'Text',
                'attributes' => array('id'=>'supplierName','required' => true)
            ));
$this->setInputFilter($inputFilter);

1 个答案:

答案 0 :(得分:1)

禁用表单定义上的验证:

//表单设置中的示例..

$this->add(array(
    'name' => 'fieldname',
    'attributes' => array(
        'type'  => 'text',
        'class' => 'something',
        'required'  => FALSE,
    ),
    'options' => array
          'label' => 'Some Field',
    ),
));

但是在输入过滤器定义中保持启用

//输入过滤器设置中的示例..

$inputFilter->add($factory->createInput(array(
    'name'     => 'fieldname',
    'required' => TRUE,
    'filters'  => array(
        array('name' => 'Int'),
    ),
)));

表单定义将决定输入字段是否应用了所需的属性。

实际输入过滤器决定在验证数据时是否需要(发布或什么)

我相信这样可以在不使用任何客户端需要检查的情况下将字段留空,但是会在执行输入过滤器验证检查时检查以确保该字段是必需的。