为了账号安全,请及时绑定邮箱和手机立即绑定

vuejs限制input框只能输入0-100的数字

vuejs限制input框只能输入0-100的数字

猛跑小猪 2018-07-06 12:13:37
 loadNumber: function (event) {        var el = event.currentTarget;        var elValue = el.value;        var reg = /^((?!0)\d{1,2}|100)$/;        if (!elValue.match(reg)) {            elValue = "";            console.log("b")            return false;        } else {            return true;        }    }我做的是用正则判断后重新赋值,问题出在不能重新赋值<input v-model="UploadInfoModel.ER" @keyup="loadNumber($event)" />
查看完整描述

4 回答

?
梦里花落0921

TA贡献1772条经验 获得超5个赞

亲测完美解决 并且限制除数字以外一切字符的输入
computed 计算属性的 getter setter 是很有用的属性

<input type=text v-model="value2">

data() {

    return {

      value1: "10"

    };

  },

  computed: {

    value2: {

      get() {

        var  value = this.value1.replace(/[^\d]+/g, '');

        if(value<=0){

          return 0

        }else if(value>=100){

          return 100

        }else{

          return value

        }

      },

      set(val) {

        this.value1 = val;

      }

    }

  },


查看完整回答
1 反对 回复 2018-07-11
?
慕雪0369431

TA贡献1条经验 获得超0个赞

<el-input

@keyup.native="scope.row.release_proportion=loadNumber(scope.row)"

type="text"

placeholder="填100以内的整数" v-model="scope.row.release_proportion" >

</el-input>


loadNumber(row){

var elValue = row.release_proportion

var reg = /^((?!0)\d{1,2})$/;

if (!reg.test(elValue)) {

row.release_proportion = "";

}

return row.release_proportion

},


查看完整回答
反对 回复 2020-06-03
  • 4 回答
  • 0 关注
  • 25005 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信