jQuery实现身份证输入添加空格
表单验证身份证输入,并且输入时前6位添加一个空格,中间8位后添加一个空格,及身份证格式验证
参考:基于jquery实现的银行卡号每隔4位自动插入空格的实现代码
参考网址: http://www.jb51.net/article/97966.html
源码代码如下:
1
<!DOCTYPE html>
2
<html lang="en">
3
<head>
4
<meta charset="UTF-8">
5
<meta name="viewport" content="width=device-width, initial-scale=1.0">
6
<meta http-equiv="X-UA-Compatible" content="ie=edge">
7
<title>Document</title>
8
<script type="text/javascript" src="js/jquery-3.2.1.js"></script>
9
<style>
10
.box {
11
width: 500px;
12
text-align: center;
13
margin: 0 auto;
14
?}
15
16
.box button {
17
margin: 20px auto;
18
?}
19
20
.box .error {
21
color: red;
22
?}
23
</style>
24
</head>
25
<body>
26
<div >
27
<form>
28
<label for="card">身份证号:</label>
29
<input type="text" name="card" value="" maxlength="20">
30
<span ></span>
31
<br>
32
<button type="button">提交</button>
33
</form>
34
</div>
35
</body>
36
<script type="text/javascript">
37
$(function () {
38
//键盘弹起
39
$(‘#card‘).on(‘keyup‘, function (e) {
40
if ((e.which >= 48 && e.which <= 57) ||
41
?(e.which >= 96 && e.which <= 105) || e.which == 88) {
42
$(‘.error‘).text(‘‘);
43
//获取当前光标的位置
44
var caret = this.selectionStart;
45
//获取当前的value
46
var value = this.value;
47
//从左边沿到坐标之间的空格数
48
var sp = (value.slice(0, caret).match(/\s/g) || []).length;
49
//去掉所有空格
50
var nospace = value.replace(/\s/g, ‘‘);
51
//重新插入空格
52
var curVal = this.value = nospace.replace(/(^(\d{6})|(\d{8}))(?=[^\s])/g, "$1 ").trim();
53
//从左边沿到原坐标之间的空格数
54
var curSp = (curVal.slice(0, caret).match(/\s/g) || []).length
55
//修正光标位置
56
this.selectionEnd = this.selectionStart = caret + curSp - sp
57
?} else {
58
$(‘.error‘).text(‘只能输入数字或X、x‘);
59
?}
60
?});
61
//失去焦点
62
$("#card").on(‘blur‘, function () {
63
//验证身份证号
64
var value = $(this).val();
65
var val = value.replace(/\s/ig, ""); //去除空格
66
console.log(val);
67
var pattern = /(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
68
if (pattern.test(val) == false) {
69
$(‘.error‘).text(‘身份证号码格式不正确‘);
70
?} else {
71
$(‘.error‘).text();
72
?}
73
?});
74
75
$("button").on(‘click‘, function () {
76
var value = $(‘#card‘).val();
77
var card = value.replace(/\s/ig, ""); //去除空格
78
if (card == ‘‘) {
79
$(‘.error‘).text(‘身份证号码不能为空‘);
80
?} else {
81
alert(card);
知识推荐
- JSP--九大内置对象、四大作用域
- css基础 /**/ 注释 ?简单示例
- 异常[PersistenceUnit: default] Unable to build Hibernate SessionFactory
- MVC和MVVM
- css引用优先级
- jquery方法操作iframe元素
- 04jQuery筛选jquery对象01
- jQuery事件
- htmlagilitypack的简单使用
- 82.配置apache和PHP
- JSON与null
- Ubuntu下搭建Mininet环境
- 自己搭建CA颁发证书做https加密网站
- netstat命令
- 全栈开发之HTML快速入门(一)
- 45道CSS基础面试题(附答案)
- kubernetes 集群
- php学习笔记-foreach循环
我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
icp备案号 闽ICP备2023006418号-8
不良信息举报平台
互联网安全管理备案
Copyright 2023 www.wodecom.cn All Rights Reserved