vue+elementui常用到的输入框验证


1.验证输入框只能输入正整数

  <el-input :disabled="mainId?true:false" @keyup.native="maxNumGetInput(index2)" v-model="item.maximumReceiveAllowed" style="width:10%"></el-input>

    maxNumGetInput(index) {
      this.formData[index].maximumReceiveAllowed = this.formData[index].maximumReceiveAllowed.replace(/[^\.\d]/g,'');
      this.formData[index].maximumReceiveAllowed = this.formData[index].maximumReceiveAllowed.replace('.',''); 
    },

2.金额输入框且最多两位小数验证

  <el-input v-model="item.money" @input="inputChange(index2)" @change="getPrice()"></el-input>

    //监听输入框变化
    inputChange(index) {
      let self = this;
      self.formData[index].money = self.inputnum(self.formData[index].money)
    },

    // 输入框最多两位小数
    inputnum(val) {
      let num = val.replace(/[^\d.]/g, ""); //清除"数字"和"."以外的字符
      num = num.replace(/^\./g, ""); //验证第一个字符是数字
      if (num.indexOf('.') == -1) { //小数点前留9位
        if (num.length > 9) {
          num = num.slice(0, 9);
        }
      } else {
        if (num.split('.')[0].length > 9) {
          num = num.split('.')[0].slice(0, 9) + '.' + num.split('.')[1];
        }
      }
      num = num.replace(/\.{2,}/g, ""); //只保留第一个, 清除多余的
      num = num.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
      num = num.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); //只能输入两个小数
      return num
    },

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM