Skip to content

BizIdCardInput 身份证号输入 ​

18 位身份证号录入与实时校验:省份区划码(GB/T 2260 前两位)、出生日期合法性、ISO 7064 MOD 11-2 校验位三重校验;校验通过后自动派生出生日期、性别、周岁、省份标签,derive 事件可一键回填表单。实名认证、员工/客户档案、旅客登记、报销人信息等一切证件录入场景。

基础用法 ​

1990-01-01男36 周岁北京市

试着改动任意一位数字:校验位不匹配会在输入框下方给出红色原因,后缀图标同步变红。

v-model 绑定原始号码;实时校验 + 派生标签 + derive 事件。

表单提交校验 ​

姓名
身份证号
expose validate() 在提交时兜底,返回完整校验结论与失败原因。

历史存量容错 ​

1990-01-01男36 周岁北京市
skip-checksum 跳过校验位验证(结构校验保留),用于迁移存量脏数据。

只读回显 ​

disabled 只读态:不可编辑、不渲染派生标签,常用于详情回显。

disabled + 关闭信息区,用于审批/详情页。

旅客入住登记(自动回填) ​

旅客姓名
身份证号
出生日期
性别
derive 派生出生日期与性别,自动回填表单项。

报销人批量核对 ​

张三
李四
王五
存在未填证件,补齐后提交
多行录入状态汇总,一行一核。

Props ​

属性名类型默认值说明
model-value / v-modelstring''原始号码(大写 X,自动过滤非法字符,上限 18 位)
placeholderstring'请输入 18 位身份证号'占位文案
disabledbooleanfalse只读
clearablebooleantrue可清空
show-errorbooleantrue校验失败时在输入框下方展示原因
show-infobooleantrue校验通过时展示派生信息标签
skip-checksumbooleanfalse跳过校验位验证(存量数据容错)

Events ​

事件名参数说明
update:model-value(value: string)输入更新(已规范化:去非法字符、大写 X)
change(value: string, info: BizIdCardInfo)值变化时携带完整解析结果
derive(info: BizIdCardInfo)校验通过时触发,携带派生信息(出生日期/性别/年龄/省份)
blur(event: FocusEvent)失焦

Expose ​

名称类型说明
validate() => BizIdCardInfo主动校验,返回 { id, valid, message, birthDate, gender, age, province }