前端-element输入框-input的一些限制(只能输入正整数和0,或者只能输入数字不可以汉字字母)

1、input输入框只能输入正整数和0
      
                
              

那你就用  οnkeyup="value=(value.replace(/\D/g,'')==''?'':parseInt(value))"

2、如果是正数负数0,包括小数都可以
        

那就用这个οnkeyup="value=value.replace(/[^\-?\d.]/g,'')",不能输入汉字和字母

3、不能输入中文,可以输入正数、负数、小数和字母
      

 οnkeyup="value=value.replace(/[\u4E00-\u9FA5]/g,'')"

4、对经纬度的限制

网页部分

  
                    
                      
                    
                  
                  
                    
                      
                    
                  

rule部分

longitude: [{ validator: checkLong, trigger: "change" }],
        latitude: [{ validator: checkLat, trigger: "change" }],

验证部分

 data() {
    //经度
    var checkLong = (rule, value, callback) => {
      // const longrg = /^(\-|\+)?(((\d|[1-9]\d|1[0-7]\d|0{1,3})\.\d{0,6})|(\d|[1-9]\d|1[0-7]\d|0{1,3})|180\.0{0,6}|180)$/;
      const longrg =
        /^[-+]?(((0|1?[0-7]?[0-9]?)|([1-9]?[0-9]?))(([.][0-9]{1,15})?)|180(([.][0]{1,15})?))$/;
      if (value && !longrg.test(value)) {
        callback(new Error("经度整数部分为0-180,小数部分为0到15位!"));
      }
      callback();
    };
    //纬度
    var checkLat = (rule, value, callback) => {
      // const latreg = /^(\-|\+)?([0-8]?\d{1}\.\d{0,6}|90\.0{0,6}|[0-8]?\d{1}|90)$/;
      const latreg = /^[-+]?([1-8]?\d(\.\d{1,15})?|90(\.0{1,15})?)$/;
      if (value && !latreg.test(value)) {
        callback(new Error("纬度整数部分为0-90,小数部分为0到15位!"));
      }
      callback();
    };
    return {}
5、大于0的数,不可以汉字和字母

/^(?!(0[0-9]{0,}$))[0-9]{1,}[.]{0,}[0-9]{0,}$/

 rules:{   adjustingValveOpening: [
          {
            validator: (rule, value, callback) => {
              if (/^(?!(0[0-9]{0,}$))[0-9]{1,}[.]{0,}[0-9]{0,}$/.test(value)) {
                callback();
              }else if (value == null || value == "") {
                callback();
              }  else {
                callback(new Error("请输入正数"));
              }
            },
            trigger: "blur",
          },
        ],
}  

我这个不是必填,可以为空就中间加了个判断;

你可能感兴趣的:(前端)