PHP小丑 发表于 2021-12-15 15:36:26

#yyds干货盘点#通过正则表达式限制输入框只能数字,且不能以0开头

最近在做项目的时候有个需求,输入框输入金额的。这个金额只能是整数,我们都知道金额肯定不能以0开头。
value = val.replace(/\D/g, '')上面这行代码的意思是当输入的是除了数字以外的字符时用空代替。这时候我们再进行处理0开头的输入即可。
下面这段是我开发小程序的时候写的,这个numInput当每次输入框的值发生变化的时候就会进入。
numInput(e) {
    var val = e.detail.value;
    var value = val.replace(/\D/g, '')
    console.log(value);
    if(value != 0){
      console.log(value+"=====val");
      this.setData({
      _num:value,
      value
      })
    }else{
      this.setData({
      value:''
      })
    }
},ok,原理基本都相同,不管是开发小程序还是开发web端页面都可以借鉴使用。
补充:写了一段js的代码功能与上面相同。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>输入整数金额</title>
</head>
<body>
    <input type="text" maxlength="8" onkeyup="ceshi(this)" value="" >
<script>
    function ceshi(val) {
      var o = val.value;
      var value = o.replace(/\D/g, '');
      console.log(value+'---value')
      if(value == 0){
            val.value = '';
      }
      if(!value){
            val.value=value;
      }
    }
</script>
</body>
</html>
            </div>
      
      <div id="asideoffset"></div>

https://blog.51cto.com/u_14820531/4804866
页: [1]
查看完整版本: #yyds干货盘点#通过正则表达式限制输入框只能数字,且不能以0开头