gpt4 book ai didi

javascript - 使用 SSN 正则表达式、屏蔽输入和依赖的 Jquery 验证

转载 作者:行者123 更新时间:2023-11-29 16:24:24 25 4
gpt4 key购买 nike

我在让 Jquery 验证与以下规则一起工作时遇到问题。

我用 SSN 格式屏蔽了字段,如果没有完整的 SSN,验证不得允许提交此信息。我有一个拒绝非 SSN 的工作正则表达式函数。我需要它也不允许空白提交(仅当该字段处于 onFocus 时才应用掩码)。最后但同样重要的是,如果选中了另一个复选框 (#noSSN),则不需要该字段。

我添加了一个 JSfiddle 页面来提供帮助:http://jsfiddle.net/B2UpW/3/

它在 fiddle 页面上的工作方式似乎有点不同。希望这对您有所帮助!

编辑:我还没有收到任何回复.. 好奇我的问题是否有任何混淆?欢迎任何有助于寻求帮助的建议!

$("#ssn").mask("999-99-9999");

$.validator.addMethod("notEqual", function(value, element, param) {
return this.optional(element) || value !== param;
}, "Please choose a value!");

$("#applicantForm").validate({
rules: {
ssn: {
notEqual: "___-__-____",
required: {
depends: function(element) {
return ($("#ssn").val() == ""
|| isValidSSN($("#ssn").val())
|| $("#noSSN:unchecked"));
}
}

}
},
messages: {
ssn: 'Please enter a social security number.'
}
});


function isValidSSN(value) {
var re = /^([0-6]\d{2}|7[0-6]\d|77[0-2])([ \-]?)(\d{2})\2(\d{4})$/;
if (!re.test(value)) { return false; }
var temp = value;
if (value.indexOf("-") != -1) { temp = (value.split("-")).join(""); }
if (value.indexOf(" ") != -1) { temp = (value.split(" ")).join(""); }
if (temp.substring(0, 3) == "000") { return false; }
if (temp.substring(3, 5) == "00") { return false; }
if (temp.substring(5, 9) == "0000") { return false; }
return true;
}

最佳答案

网站所有者,请停止使用上述来自 jammypeach 或 Stephen S. 的代码段。某些有效的 SSN 被其正则表达式拒绝。

参见 http://www.socialsecurity.gov/employer/randomization.html

Previously unassigned area numbers were introduced for assignment

自 2011 年 6 月以来,在创建该线程之前,SSN 可以以“773”及以上开头。

请将 ([0-6]\d{2}|7[0-6]\d|77[0-2]) 替换为 \d{3} - 因为你,现在我必须亲自去银行 ;-)

关于javascript - 使用 SSN 正则表达式、屏蔽输入和依赖的 Jquery 验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7689535/

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