[英]Jquery Validate plugin rules method not working
我有一个asp.net表单,我试图使用Jquery Validation插件。 我试图使用rules
方法使用javascript添加rules
。 所以我试过这样的事情
$('#btnSave').on('click', function () {
$("#txtAmount").rules("add", {
required: true,
minlength: 2,
messages: {
required: "Required input",
minlength: jQuery.format("Please, at least {0} characters are necessary")
}
});
$('form').validate({
submitHandler: function (form) {
form.submit();
}
});
});
我已经设置了ClientIDMode="Static"
以便我可以直接使用contorl ID。 但是,这不起作用。 谁能告诉我问题出在哪里? 我似乎无法将手指放在上面。
这是一个JsFiddle
是的,作为公认的答案解释,你必须调用.validate()
调用之前(初始化) .rules()
方法。
然而:
1)因为.validate()
只是初始化方法(只调用一次 ),所以不需要将它包装在click
处理程序中。 该插件已经自动捕获click事件。
2)在这个例子情况下,没有必要对submitHandler
只包含一个form.submit()
内,因为这已经是默认行为submitHandler
。 完全退出submitHandler
将产生相同的结果。 虽然,如果您需要在提交时使用ajax或执行其他一些代码,那么请submitHandler
使用submitHandler
。
$(document).ready(function() {
$('form').validate({
// other rules and options
});
$("#id1").rules("add", {
required: true,
minlength: 2,
messages: {
required: "Required input"
}
});
});
演示: http : //jsfiddle.net/85KR4/5/ (成功提交的常规表单操作)
演示2: http : //jsfiddle.net/85KR4/7/ (ajax呼吁成功提交)
除了订单,一切都是正确的。 首先,您应该调用validate
,之后您可以调用rules
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.