function formatBankNo(BankNo) {
if(BankNo.value == "") return;
var account = new String(BankNo.value);
account = account.substring(0, 22); /*帐号的总数, 包括空格在内 */
if(account.match(".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}") == null) {
/* 对照格式 */
if(account.match(".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}|" + ".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}|" +
".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}|" + ".[0-9]{4}-[0-9]{4}-[0-9]{4}-[0-9]{7}") == null) {
var accountNumeric = accountChar = "",
i;
for(i = 0; i < account.length; i++) {
accountChar = account.substr(i, 1);
if(!isNaN(accountChar) && (accountChar != " ")) accountNumeric = accountNumeric + accountChar;
}
account = "";
for(i = 0; i < accountNumeric.length; i++) { /* 可将以下空格改为-,效果也不错 */
if(i == 4) account = account + " "; /* 帐号第四位数后加空格 */
if(i == 8) account = account + " "; /* 帐号第八位数后加空格 */
if(i == 12) account = account + " "; /* 帐号第十二位后数后加空格 */
account = account + accountNumeric.substr(i, 1)
}
}
} else {
account = " " + account.substring(1, 5) + " " + account.substring(6, 10) + " " + account.substring(14, 18) + "-" + account.substring(18, 25);
}
if(account != BankNo.value) BankNo.value = account;
}
js 格式化银行卡号
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
推荐阅读更多精彩内容
- TextFieldDemo 点击查看Demo 以前项目中,有需要输入银行卡号的需求(每4位空格)所以 做了个小D...
- 问题描述 TextField中输入身份证号,手机号,银行卡号时每隔几位需要添加空格。当输入错误时需要从末尾或者中间...
- 开发中对卡号,号码展示需求如下: 如原始电话号码: 12345678901 格式化号码: 123 4...
- 首先普及一下银行卡号组成信息,银行卡号一般由三部分组成: 发卡行标识代码(BIN号) 发卡行自定义位 校验码。 银...