首先在网上找了很多都是说oninput在vue下失效,必须得这样写 v-on:input,但是我直接使用oninput是可以使用的,但这样直接写οninput="value=value.replace(正则表达式,' ')" 的话,v-model绑定的值是为空的,所以我想到了个简单的解决办法。

代码如下

<el-input class="aatss_input aatss_width_195" id="dia_country"  v-on:input="checkCountry" v-model="httpsdialog.country" maxlength="2" clearable>
                  </el-input>
  checkCountry(){
      //解决v-model与oninput同时使用失效问题
      var dom = document.getElementById("dia_country");
      var value = dom.value;
      //写你自己的输入规则
      value = value.replace(/[^a-zA-Z]/g, '');
      value = value.toUpperCase();
      if(value.length>2){
        value = value.substring(0,2);
      }
      
      dom.value = value;//输入框赋值
      this.httpsdialog.country = dom.value;//data参数赋值
    }

 

Logo

前往低代码交流专区

更多推荐