使用Jquery Validation Plugin为我的表单添加实时validation
我想使用这个jquery插件实时validation我的表单(在输入上): https : //jqueryvalidation.org/rules/ ?
这是我当前validationfunction的一个示例:
(function(ns, window, document, $, undefined) { var $form; ns.init= function(){ $form = $('#formQA'); $form.validate({ rules : { QResponse : { required: function (element) { if ($(element).is(":visible")) { return true; } return false; } , maxlength: 255, minlength: 2 } } }) } })(home.createNS('home.qa.validation', false), window, document, jQuery);
默认情况下,它会在keyup
事件上进行validation。 但是,validation是“懒惰”,而非“急切”,这意味着在第一次单击提交之后才会进行validation。 所以你必须调整一些设置。
$form.validate({ rules : { // rules }, onfocusout: function(element) { this.element(element); // triggers validation }, onkeyup: function(element, event) { this.element(element); // triggers validation } });
你的代码:
required: function (element) { if ($(element).is(":visible")) { return true; } return false; }
您无需测试可见性。 默认情况下,插件将动态忽略任何隐藏字段。 只需将required
设置为true
然后让其余部分发生。