序言

在开发项目的过程中,表单需要设置某些字段输入的值必须是数字,且是必输字段,我使用了element提供的方法v-model.number,但是出现了一点问题。具体见图:

用了v-model.nuber以后:

看到了图以后很显然意见,他虽然完成了必输字段需要时数字这个需求,但是他还是可以输入文字。于是采用了另一种办法:

具体用法看代码:

<el-input v-model="scope.fmdt.thirdYearAssign" class="innerbox" type="number" onkeypress="return( /[\d]/.test(String.fromCharCode(event.keyCode) ) )"></el-input>

这里的  οnkeypress="return( /[\d]/.test(String.fromCharCode(event.keyCode) ) )"  是为了解决输入框不可以输入e,从而只能输入数字:

此外需要一点css,来让输入框更加完美:

/*------------------------修改type=number的样式------------------------------------------------*/
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
}
input[type="number"]{
    -moz-appearance: textfield;
}

这样就解决了上面的问题,输入框只能那个输入数字。

Logo

前往低代码交流专区

更多推荐