日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

表单校验 身份证

發(fā)布時間:2024/1/1 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 表单校验 身份证 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

表單校驗

//表單中的某一項,校驗身份證<Form.Itemname="idNumber"label="身份證號碼"rules={[{required: true,},({ getFieldValue }) => ({validator(_, value) {if (isChineseIDCardNumber(value)) { //調(diào)用isChineseIDCardNumberreturn Promise.resolve();}return Promise.reject(new Error('您輸入的身份證有誤'),);},}),]}><Inputplaceholder="請輸入身份證號碼"style={{ width: '90%' }}/></Form.Item> const testRegExp = /^[1-9]([0-9]{14}|[0-9]{16}[0-9Xx])$/; const areaMap = [11, 12, 13, 14, 15, 21, 22, 23, 31, 32, 33, 34, 35, 36, 37, 41, 42, 43, 44,45, 46, 50, 51, 52, 53, 54, 61, 62, 63, 64, 65, 71, 81, 82, ]; const weightMap = [7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2]; const codeMap = ['1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'];const isValidDate = (year, month, day) => {const date = new Date(year, month - 1, day);return (date.getFullYear() === year &&date.getMonth() + 1 === month &&date.getDate() === day &&date.getTime() < new Date().getTime()); };/*** 檢測 `value` 是否是中國大陸身份證號碼。** @param value 要檢測的值* @returns 是(true)或否(false)* @see https://my.oschina.net/labrusca/blog/306116*/ export default function isChineseIDCardNumber(value) {const len = value.length;// 長度錯誤if (len !== 15 && len !== 18) {return false;}// 模式校驗if (!testRegExp.test(value)) {return false;}// 地區(qū)校驗if (areaMap.indexOf(+value.substr(0, 2)) === -1) {return false;}// 15 位if (len === 15) {return isValidDate(+`19${value.substr(6, 2)}`,+value.substr(8, 2),+value.substr(10, 2),);}// 18 位if (!isValidDate(+value.substr(6, 4),+value.substr(10, 2),+value.substr(12, 2),)) {return false;}// 校驗碼const sum = value.split('').slice(0, 17).reduce((s, num, index) => {return (s += +num * weightMap[index]);}, 0);return codeMap[sum % 11] === value[17].toUpperCase(); }

總結(jié)

以上是生活随笔為你收集整理的表单校验 身份证的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。