jQueryvalidation插件 – 触发validation单个字段
我有一个表格,可以select通过Facebook连接预先填充。 一旦用户连接,他们的名字和电子邮件会自动填入。问题是,这不会触发远程validation,以检查电子邮件是否已经存在。
有没有办法我可以单独调用该字段的validation? 就像是:
$('#email-field-only').validate()
会是想法。 通过文档search,没有运气。
这种方法似乎做你想要的:
$('#email-field-only').valid();
出于某种原因,其他一些方法不能工作,直到现场被聚焦/模糊/改变,或提交已经尝试…这对我有效。
$("#formid").data('validator').element('#element').valid();
不得不通过jquery.validate脚本来find它…
$("#FormId").validate().element('#FieldId');
使用Validator.element()
:
validation单个元素,如果有效则返回true,否则返回false。
以下是API中显示的示例:
var validator = $( "#myform" ).validate(); validator.element( "#myselect" );
.valid()
validation整个表单,正如其他人指出的那样。 该API说:
检查选定的表单是否有效,或所有选定的元素是否有效。
当你设置你的validation,你应该保存validation对象。 你可以用它来validation单个字段。
<script type="text/javascript"> var _validator; $(function () { _validator = $("#form").validate(); }); function doSomething() { _validator.element($('#someElement')); } </script>
– 交叉发布这个类似的问题
如果要validation单个表单字段,但不希望触发UI并显示任何validation错误,则可以考虑使用Validator.check()方法,如果给定字段通过validation,则返回该方法。
这里是例子
var validator = $("#form").data('validator'); if(validator.check('#element')){ /*field is valid*/ }else{ /*field is not valid (but no errors will be displayed)*/ }
$("#element").validate().valid()