我正在使用select2插件,所以如果我在客户端(html5)有错误,它会显示我在错误的位置,因为select2插件。(元素的位置)
我想仅针对一个特定元素禁用html5验证,但保留帖子验证。
$inputFilter = new InputFilter();
$this->add(array(
'name' => 'supplierName',
'type' => 'Text',
'attributes' => array('id'=>'supplierName','required' => true)
));
$this->setInputFilter($inputFilter);
答案 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'),
),
)));
表单定义将决定输入字段是否应用了所需的属性。
实际输入过滤器决定在验证数据时是否需要(发布或什么)
我相信这样可以在不使用任何客户端需要检查的情况下将字段留空,但是会在执行输入过滤器验证检查时检查以确保该字段是必需的。