本文实例讲述了Javascript验证Visa和MasterCard信用卡号的方法。分享给大家供大家参考。具体实现方法如下:
visa验证:
<HTML> <head> <title>Visa Example</title> <script type="text/javascript"> function luhnCheckSum(sCardNum) { var iOddSum = 0; var iEvenSum = 0; var bIsOdd = true; for (var i=sCardNum.length-1; i >= 0; i--) { var iNum = parseInt(sCardNum.charAt(i)); if (bIsOdd) { iOddSum += iNum; } else { iNum = iNum * 2; if (iNum > 9) { iNum = eval(iNum.toString().split("").join("+")); } iEvenSum += iNum; } bIsOdd = !bIsOdd; } return ((iEvenSum + iOddSum) % 10 == 0); } function isValidVisa(sText) { var reVisa = /^(4\d{12}(?:\d{3})?)$/; if (reVisa.test(sText)) { return luhnCheckSum(RegExp.$1); } else { return false; } } function validate() { var oInput1 = document.getElementById("txt1"); if (isValidVisa(oInput1.value)) { alert("Valid"); } else { alert("Invalid!"); } } </script> </head> <body> <P>Visa Number: <input type="text" id="txt1" /><br /> <input type="button" value="Validate" onclick="validate()" /></p> </body> </html>
MasterCard验证:
<html> <head> <title>MasterCard Example</title> <script type="text/javascript"> function luhnCheckSum(sCardNum) { var iOddSum = 0; var iEvenSum = 0; var bIsOdd = true; for (var i=sCardNum.length-1; i >= 0; i--) { var iNum = parseInt(sCardNum.charAt(i)); if (bIsOdd) { iOddSum += iNum; } else { iNum = iNum * 2; if (iNum > 9) { iNum = eval(iNum.toString().split("").join("+")); } iEvenSum += iNum; } bIsOdd = !bIsOdd; } return ((iEvenSum + iOddSum) % 10 == 0); } function isValidMasterCard(sText) { var reMasterCard = /^(5[1-5]\d{2})[\s\-]?(\d{4})[\s\-]?(\d{4})[\s\-]?(\d{4})$/; if (reMasterCard.test(sText)) { var sCardNum = RegExp.$1 + RegExp.$2 + RegExp.$3 + RegExp.$4; return luhnCheckSum(sCardNum); } else { return false; } } function validate() { var oInput1 = document.getElementById("txt1"); if (isValidMasterCard(oInput1.value)) { alert("Valid"); } else { alert("Invalid!"); } } </script> </head> <body> <P>MasterCard Number: <input type="text" id="txt1" /><br /> <input type="button" value="Validate" onclick="validate()" /></p> </body> </html>
希望本文所述对大家的javascript程序设计有所帮助。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。