JQuery验证规则

JQuery验证规则,jquery,jquery-validate,Jquery,Jquery Validate,我试图让一个错误显示在名字框下面,但由于某些原因它不起作用,其他框会起作用。我在stackoverflow和其他一些网站上尝试了名字addmethods的不同变体 我将从提供的模式中检索信息,我希望它出现一个错误,就像我已经构建的其他三个错误一样 HTML: 下面是main函数中的整个addmethod $.validator.addMethod("validTitle", function (value, element) { // custom rule return this.op

我试图让一个错误显示在名字框下面,但由于某些原因它不起作用,其他框会起作用。我在stackoverflow和其他一些网站上尝试了名字addmethods的不同变体

我将从提供的模式中检索信息,我希望它出现一个错误,就像我已经构建的其他三个错误一样

HTML:

下面是main函数中的整个addmethod

$.validator.addMethod("validTitle", function (value, element) { // custom rule
    return this.optional(element) || (value == "Mr." || value == "Ms." || value == "Mrs." || value == "Dr.");
}, "");

$.validator.addMethod('validPhone', function (value) {
    return /^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$/.test(value);
}, "");

$.validator.addMethod('email', function (value)
{ return /^[a-zA-Z0-9._-]+@+[a-zA-Z]+.+ [a-zA-Z]$/.test(value); }, "");


$.validator.addMethod('validfirst', function (value) {
    return /^[a-zA-Z]$/.test(value);
}, "");
下面是一张图片,证明我的其他三个字段返回了一个错误调用


对您的正则表达式稍作调整,它对我有效:~请注意,我从
字母中提取正则表达式,仅在
规则中包含在内。然而,即使你的正则表达式不是很正常,它仍在发出验证消息:因此,您没有向我们显示的代码中一定有其他错误。我按特定顺序添加了整个addmethods…因此,一定是某些原因导致它无法工作。
TextBoxLastname
name
属性拼写错误为
TexBoxLastname
。否则,它将显示验证消息,尽管存在正则表达式问题:
$("#EmployeeModalForm").validate({
rules: {
    TextBoxTitle: { maxlength: 4, required: true, validTitle: true },
    TextBoxFirstname: { maxlength: 25, required: true, validfirst: true },
    TextBoxLastname: { maxlength: 25, required: true },
    TextBoxEmail: { maxlength: 40, required: true, email: true },
    TextBoxPhone: { maxlength: 15, required: true, validPhone: true }
},
ignore: ".ignore, :hidden",
errorElement: "div",
wrapper: "div", // a wrapper around the error message
messages: {
    TextBoxTitle: {
        required: "required 1-4 chars.", maxlength: "required 1-4 chars.", validTitle: "Mr. Ms. Mrs. or Dr."
    },
    TextBoxFirstname: {
        required: "required 1-25 chars.", maxlength: "required 1-25 chars.", validfirst: "Please enter a first name"
    },
    TextBoxLastname: {
        required: "required 1-25 chars.", maxlength: "required 1-25 chars."
    },
    TextBoxPhone: {
        required: "required 1-15 chars.", maxlength: "required 1-15 chars.", validPhone: "Please enter a valid US or Canadian phone#."
    },
    TextBoxEmail: {
        required: "required 1-40 chars.", maxlength: "required 1-40 chars.", email: "need vaild email format"
    }
}
});
$.validator.addMethod("validTitle", function (value, element) { // custom rule
    return this.optional(element) || (value == "Mr." || value == "Ms." || value == "Mrs." || value == "Dr.");
}, "");

$.validator.addMethod('validPhone', function (value) {
    return /^\(?(\d{3})\)?[- ]?(\d{3})[- ]?(\d{4})$/.test(value);
}, "");

$.validator.addMethod('email', function (value)
{ return /^[a-zA-Z0-9._-]+@+[a-zA-Z]+.+ [a-zA-Z]$/.test(value); }, "");


$.validator.addMethod('validfirst', function (value) {
    return /^[a-zA-Z]$/.test(value);
}, "");