链接

输入4为数字, 再输入一个数字调试一下就能看懂了

<head lang="en">
<meta charset="UTF-8">
<title>银行卡号4位空格</title>
<script src="http://j2.58cdn.com.cn/js/jquery-1.8.3.js"></script>
</head> <body>
<input type="text" id="kahao" />
<script>
$(function() { $('#kahao').on('keyup', function(e) {
//只对输入数字时进行处理
if((e.which >= 48 && e.which <= 57) ||
(e.which >= 96 && e.which <= 105 )){
//获取当前光标的位置
var caret = this.selectionStart
//获取当前的value
var value = this.value
//从左边沿到坐标之间的空格数, 计算原来有几个空格
var sp = (value.slice(0, caret).match(/\s/g) || []).length
//去掉所有空格
var nospace = value.replace(/\s/g, '')
//重新插入空格
var curVal = this.value = nospace.replace(/(\d{4})/g, "$1 ").trim() //主要这里"$1 " 加了一个空格
//从左边沿到原坐标之间的空格数, 重新赋值后有几个空格
var curSp = (curVal.slice(0, caret).match(/\s/g) || []).length
//修正光标位置
this.selectionEnd = this.selectionStart = caret + curSp - sp }
})
})
</script>
</body> </html>

  

支付宝为了兼容 和 易用性, 是在悬浮一个提示框分开卡号的, 这种也比较容易实现

如图 

最新文章

  1. Maven依赖版本冲突的分析及解决小结
  2. Linq动态查询简易解决之道(原创)
  3. EasyUI DataGrid 复选框
  4. eclipse手动添加源码
  5. mac 下 安装 mongodb 数据库
  6. 初探eXtreme scale
  7. final关键字(最终的)
  8. c# 获取端口的连接数,网站的连接数
  9. Redis在windows下安装与配置
  10. Jupyter Notebook 介绍 安装和使用技巧
  11. Spring 学习历程(二)
  12. 反射List&lt;M&gt; To DataTable|反射IList To DataTable|反射 DataTable To List&lt;M&gt;
  13. Java代码操作HDFS测试类
  14. Objective-C编程 - 关于Block的要点
  15. 从本机IIS中管理 远程服务器 IIS
  16. kubernetes应用的各种访问方式
  17. 20145324王嘉澜 《网络对抗技术》 MAL_逆向与Bof基础
  18. Ivan and Burgers CodeForces - 1100F (线性基)
  19. LoadRunner录制:集合点
  20. javaee Listener

热门文章

  1. MySQL多个相同结构的表查询并把结果合并放在一起的语句(union all)
  2. Django组件补充(缓存,信号,序列化)
  3. Vector、List、LinkedList
  4. HDU5183 hash 表
  5. .net webform 把word转为html
  6. HDU4642
  7. 【小坑】java下载excel文件
  8. 三.野指针和free
  9. sqlite中的时间
  10. Gym 101246G Revolutionary Roads