gpt4 book ai didi

jquery - 向 jQuery 验证添加方法,无需提交按钮

转载 作者:行者123 更新时间:2023-12-01 01:38:08 24 4
gpt4 key购买 nike

我有一个需要验证的表单,但它没有提交按钮。因此,为了完成验证,我按照 http://docs.jquery.com/Plugins/Validation/valid 上的示例进行操作。

告诉调用 .valid() 函数。所以我添加了以下代码,效果很好:

            $(".getcars").click(function() {
valid = $("#form1").valid();
if(valid){
ajaxCall();
}

});

现在我想向验证字段添加更多规则,所以我尝试了

jQuery.validator.addMethod("lettersandnumonly", function(value, element) {
return this.optional(element) || /^[0-9A-Za-z]+$/i.test(value);
}, "Letters and numbers only ");
jQuery.validator.addMethod("nowhitespace", function(value, element) {
return this.optional(element) || /^\S+$/i.test(value);
}, "No white space please");

$(".getcars").click(function() {
valid = $("#form1").valid(
{
rules: {
postal_code: {
maxlength: 6,
lettersandnumonly: true,
nowhitespace: true
}
}
});
if(valid){
ajaxCall();
}

});

但这不起作用。谁能告诉我添加规则时我做错了什么?

最佳答案

rule 定义位于对 validate() 的初始调用中。由于 valid() 仅适用于已调用 validate() 的表单,我假设您在代码中的某处有一行调用 validate( ):

$("#form1").validate();

您所要做的就是将规则定义移至初始调用中:

$("#form1").validate({
rules: {
postal_code: {
maxlength: 6,
lettersandnumonly: true,
nowhitespace: true
}
}
});

...然后像您最初所做的那样稍后调用 .valid():

$(".getcars").click(function() {
valid = $("#form1").valid();
if(valid) {
ajaxCall();
}
});

关于jquery - 向 jQuery 验证添加方法,无需提交按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7856418/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com