jQuery验证-如何忽略字母大小写?
可能是个愚蠢的问题,但我似乎在谷歌土地上找不到任何东西。我只需要一个方法来忽略输入字段的大小写。我正在进行城市名称匹配,但需要同时使用“亚特兰大”和“亚特兰大”才能生效。我应该如何编辑它以获得我需要的验证爱jQuery验证-如何忽略字母大小写?,jquery,validation,jquery-validate,Jquery,Validation,Jquery Validate,可能是个愚蠢的问题,但我似乎在谷歌土地上找不到任何东西。我只需要一个方法来忽略输入字段的大小写。我正在进行城市名称匹配,但需要同时使用“亚特兰大”和“亚特兰大”才能生效。我应该如何编辑它以获得我需要的验证爱 jQuery.validator.addMethod("atlanta", function(value) { return value == "Atlanta"; //Need 'atlanta' to work too }, '**Recipient must resid
jQuery.validator.addMethod("atlanta", function(value) {
return value == "Atlanta"; //Need 'atlanta' to work too
}, '**Recipient must reside in Chicago City Limits**');
Pre感谢any and all:)获取不区分大小写匹配的最简单方法是将两个值转换为大写,然后进行比较(大写,因为在某些区域性/语言中,大写到小写的转换可以更改字符!) 那就结账吧
value.toUpperCase() == "Atlanta".toUpperCase()
这是不区分大小写的,你可以用正则表达式做很多有趣的事情。享受。请不要使用“Cosntant”。toLowerCase()这有太多的错误。您甚至可以创建一个更通用的jQuery验证规则,可以重用它来执行不区分大小写的比较,如
$.validator.addMethod("equalToIgnoreCase", function (value, element, param) {
return this.optional(element) ||
(value.toLowerCase() == $(param).val().toLowerCase());
});
然后可用于以下两个样本输入
<input type="text" name="firstname"/>
<input type="text" name="username"/>
超级快速回答亚历克斯!真是太棒了,谢谢你,这真是太棒了。一旦有人向你展示了它是如何完成的,你就会明白:)@Jamie别担心,编码快乐!这是一个很好的解决方案。也测试过了,我想我会坚持下去。大多数人都会大写。谢谢你,阿米特!完美答案。非常感谢。我试过这个(我很好奇,想知道剥猫皮的各种方法),但我没有得到任何爱。为什么.toLowerCase()不是正确的方法?
return (value ? value.match(/atlanta/i) : null) != null
$.validator.addMethod("equalToIgnoreCase", function (value, element, param) {
return this.optional(element) ||
(value.toLowerCase() == $(param).val().toLowerCase());
});
<input type="text" name="firstname"/>
<input type="text" name="username"/>
$("form").validate({
rules: {
firstname: {
equalToIgnoreCase: "input[name=username]"
}
},
messages: {
firstname: {
equalToIgnoreCase: "The 'firstname' must match the 'username'"
}
});