使用自定义属性验证常用的表单格式

前言
实际开发中,往往要注重效率和代码的复用率。以下的Demo就通过html5的自定义属性来使用Jquery实现常用的数字格式自动验证。以后的开发中需要考虑更多的、更便捷的使用技巧,这样才能做到事半功倍。

用法
在需要验证格式的Input元素中新增自定义属性 data-hooknumberid-card 就可以分别验证输入内容是否为手机号码或身份证号码。

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Demo</title>
</head>
<body>
  <input type="number" data-hook="number">
  <br>
  <input type="number" data-hook="id-card">
</body>
<script src="jquery-1.9.0.min.js"></script>
<script>
  $(function() {
    //验证手机号码
    $('[data-hook="number"]').on('focus', function() {
      $(this).val('');
      $('.number-input-notice').remove();
    });
    $('[data-hook="number"]').on('blur', function() {
      var val = $(this).val();
      if(val) {
        if(!val.match(/^(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/)) {
          $(this).after('<span class="number-input-notice">请填写正确的手机号码</span>');
        }
      }
    });
    //验证身份证
    $('[data-hook="id-card"]').on('focus', function() {
      $(this).val('');
      $('.id-card-input-notice').remove();
    });
    $('[data-hook="id-card"]').on('blur', function() {
      var val = $(this).val();
      if(val) {
        if(!val.match(/^([0-9]{17})[X|x|0-9]{1}$/)) {
          $(this).after('<span class="id-card-input-notice">请填写正确的身份证号码</span>');
        }
      }
    });
  });  
</script>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值