本文介绍如何在JavaScript中通过引入jQuery和自定义luhmCheck.js文件来实现银行卡号校验。代码包含对输入非空、长度16至19位、全数字格式及Luhm算法的完整验证逻辑,并提供HTML交互示例与测试卡号。
JavaScript实现银行卡号Luhm校验的方法
首先,需要在项目中引入jquery.js库文件。
其次,引入用于执行Luhm校验的luhmCheck.js脚本,该脚本专门处理银行卡号的合法性验证。
参考以下具体实现案例:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>无标题页</title>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/luhmCheck.js"></script>
</head>
<body>
<input type="text" id="t_bankno" />
<input type="button" id="btnCheck" value="check" onclick="CheckBankNo($('#t_bankno'));" />
<span id="banknoInfo"></span>
</body>
</html>
以下是相关的JavaScript核心代码逻辑:
<script type="text/javascript">
function CheckBankNo(t_bankno) {
var bankno = $.trim(t_bankno.val());
if(bankno == "") {
$("#banknoInfo").html("请填写银行卡号");
return false;
}
if(bankno.length < 16 || bankno.length > 19) {
$("#banknoInfo").html("银行卡号长度必须在16到19之间");
return false;
}
var num = /^\d*$/; //全数字
if(!num.exec(bankno)) {
$("#banknoInfo").html("银行卡号必须全为数字");
return false;
}
//开头6位
var strBin = "10,18,30,35,37,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,58,60,62,65,68,69,84,87,88,94,95,98,99";
if(strBin.indexOf(bankno.substring(0, 2)) == -1) {
$("#banknoInfo").html("银行卡号开头6位不符合规范");
return false;
}
//Luhm校验(新)
if(!luhmCheck(bankno))
return false;
$("#banknoInfo").html("验证通过!");
return true;
}
</script>
测试使用的卡号示例如下:
1、6222600810010710887
2、6225881414207430
以上介绍了在JavaScript中校验银行卡号的具体实现代码,希望能对读者有所帮助。如有任何疑问,欢迎留言,小编会及时回复。同时感谢大家对本站的支持!