我希望验证表单中的电子邮件字段,以检查每个逗号之间的每封电子邮件是否有效。但是,如果这不可能或必须提交以实现它,那么我可以在发布数据后进行此验证。
我遇到的主要问题是CakePHP(v2.3)似乎会自动验证任何具有电子邮件名称的字段。我试图为这个单独的字段,这个页面和特定的模型关闭它,但它们似乎都不起作用。
我的观点如下:
echo $this->Form->input('email',array('novalidate' => true));
我在我的控制器中试过这个:
$this->Org->validator()->remove('email');
我还在模型中尝试了以下内容:
public $validate = array(
'email' => false
);
我确定刚刚取消验证应该很简单吗?
我注意到我确实在输入上得到了一个属性,表示没有验证,但这显然被忽略了,因为它仍然验证了字段:
<input id="OrgEmail" type="email" value="" maxlength="255" novalidate="novalidate" name="data[Org][email]">
答案 0 :(得分:0)
现代浏览器验证是客户端的
尝试
echo $this->Form->input('email',array('novalidate' => true, 'type' => 'text'));
如果您仍想使用电子邮件html5输入类型
,还可以指定多个逗号分隔值echo $this->Form->input('email',array('novalidate' => true, 'multiple' => 'multiple'));