el-input,输入正则

  • Post author:
  • Post category:其他


1.

<el-input  oninput="value=value.replace(/^\.+|[^\d.]/g,'')" maxlength="8" />

带小数的正数,正则放oninput属性里 οninput=”value=value.replace(/^\.+|[^\d.]/g,”)”

2.

<el-input @change="widthCode2" oninput="value=value.replace(/[^0-9]/g,'')" maxlength="9" />

输入正整数, 正则放oninput属性里 οninput=”value=value.replace(/[^0-9]/g,”)” , change 为输入时触发函数事件(有需要即加)

3.

<el-input @change="widthCode2" oninput="value=value.replace(/[^-0-9]/g,'')" maxlength="9" />

输入整数, 正则放oninput属性里 οninput=”value=value.replace(/[^-0-9]/g,”)” , change 输入时触发函数事件(有需要即加)

4.

<el-input  @input="checkPrice()" maxlength="10"/>

函数为
const checkPrice=()=>{
      let checkPlan = '' + rowData.tsFaultData.batteryVolt
      checkPlan = checkPlan
        .replace(/[^\d.]/g, '') // 清除“数字”和“.”以外的字符
        .replace(/\.{2,}/g, '.') // 只保留第一个. 清除多余的
        .replace(/^\./g, '') // 保证第一个为数字而不是.
        .replace('.', '$#$')
        .replace(/\./g, '')
        .replace('$#$', '.')
      if (checkPlan.indexOf('.') < 0 && checkPlan !== '') {
        // 以上已经过滤,此处控制的是如果没有小数点,首位不能为类似于 01、02的金额
        checkPlan = parseFloat(checkPlan) + ''
      } else if (checkPlan.indexOf('.') >= 0) {
        checkPlan = checkPlan
          .replace(/^()*(\d+)\.(\d\d).*$/, '$1$2.$3') // 只能输入两个小数
      }
      rowData.tsFaultData.batteryVolt = checkPlan
 
    }

输入带小数的数,仅能输入小数点后两位



版权声明:本文为Backbody_原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。