用el-input标签都知道type=number是个可以控制输入框只能输入数字的属性值,但设置这个属性值后maxlength就不管用了,然后看了网上说可以用截取来控制输入长度,可能本人有太菜了,所以没有成功,又把type属性默默改回了text的属性值
<el-input
v-model.number="sizeForm.queueExceedingNumber"
:maxlength="4"
@input="blurQueueExceedingNumber"
type="text"
>
</el-input>
然后再方法中设置输入不可为0的判断和只能输入正整数的正则
methods:{
blurQueueExceedingNumber(e) {
let value = e
if (value <= 0 ||value <= "0") {
this.sizeForm.queueExceedingNumber = 1;
}
const reg = /^[+-]?(0|([1-9]\d*))(\.\d+)?$/g
if(!reg.test(this.sizeForm.queueExceedingNumber)){
this.$message.error("只能输入数字");
this.sizeForm.queueExceedingNumber = ''
return false;
}
}
}
然后就好了
其实还是想知道一下那个截取是怎么整的,希望有大神指教哦!
---------------------------------------------------------------------------------------------------------------------------------
我是一只还在学飞的菜鸟,如果有写的不对的,希望各路大神大佬赐教~