js正则校验身份证姓名和身份证号码

<template>

<div class="page-box">

<div style="margin:.4rem;">

          <p class="second-title">请输入身份证上的姓名:</p>

          <van-field v-model="card-name" clearable ref="cardName"></van-field>

  </div>

  <div style="margin:.4rem;">

          <p class="second-title">请输入本人身份证号:</p>

          <van-field v-model="card-number" clearable ref="cardNumber" maxlength="18"></van-field>

   </div>

</div>

</template>

<script>

  export default {

    data() {

      return {

        cardName:'',

        cardNumber:''

      };

    },

    methods: {

        //提交前的数据校验

        valid() {

        let that=this

        var regIdName = /^(([a-zA-Z+\.?\·?a-zA-Z+\s]{2,30}$)|([\u4e00-\u9fa5+\·?\u4e00-\u9fa5+]{2,30}$))/;   // 包括新疆身份证姓名含·并且英文支持空格

        if(!regIdName.test(that.cardName)){

          that.$toast({

            message: '请输入正确的姓名',

            duration: 2000

          });

          that.$refs.cardName.focus();

          return false;  

        } 

        var regIdNo = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;

        if(!regIdNo.test(that.cardNumber)){

          that.$toast({

            message: '身份证号填写错误',

            duration: 2000

          });

          that.$refs.cardNumber.focus();

          return false;  

        } 

        return true

      }

      }

    }

  };

</script>

<style lang="scss" scoped>

.page-box {

        width: 100%;

        display: flex;

        flex-direction: column;

        .second-title {

                font-size: 0.14rem;

        }

        .card-name {

                font-size: 0.14rem;

                width: 3.5rem;

        }

        .card-number {

                font-size: 0.14rem;

                width: 3.5rem;

        }

}

<style>

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值