JQuery: 表单验证插件 - 验证特定字符串?

4

尝试使用此链接:http://stackoverflow.com/questions/4439119/to-check-string-in-jquery-validate - Sibu
2个回答

11

简单的一句话...

$.validator.addMethod("equals", function(value, element, string) {
    return value === string;
}, $.validator.format("Please enter '{0}'"));
$("#form").validate({
    rules: {            
        name: {
            required: true,
            equals: "foo"
        }
    }
});

根据您的要求进行了更新

$.validator.addMethod("equals", function(value, element, string) {
    return $.inArray(value, string) !== -1;
}, $.validator.format("Please enter '{0}'"));
$("#form").validate({
    rules: {            
        name: {
            required: true,
            equals: ["foo", "bar", 'blah"]
        }
    },
    messages: {
        name: "Please enter either '{0}' or '{1}' or '{2}'"
    }
});

谢谢 - 我认为那就是我需要的。不知道你是否知道一种方法来修改它,使其可以等于:“foo”或“bar”或“blah”(即有多个正确的输入)? - MeltingDog
你的意思是你想要进行多个字符串验证吗?例如输入可以等于"foo"或"bar"或"blah"... - Sandeep

1

参考自这里

$.validator.addMethod(
        "regex",
        function(value, element, regexp) {
            var re = new RegExp(regexp);
            return this.optional(element) || re.test(value);
        },
        "Please check your input."
);

现在验证文本框:

$("#Textbox").rules("add", { regex: "/* your regex */" })

谢谢,但我不确定如何在我的当前脚本旁边设置它。它会像这样吗http://jsfiddle.net/MeltingDog/CVHKj/? - MeltingDog
更加简单:$.validator.addMethod('Foo', function (value) { return /^正则表达式/.test(value); }, '不是有效的 Foo 类'); 然后将这个 Foo 类添加到您的文本框。 - Cris

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接