可以输入小数点情况:
input中加入事件
onKeypress="return (/[0-9\.]/.test(String.fromCharCode(event.keyCode)))"
不可以输入小数点情况:
正则换成如下
onKeypress="return (/[\d]/.test(String.fromCharCode(event.keyCode)))"
如果需要处理number类型中输入框上下箭头css如下:
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
-webkit-appearance: none;
}
input[type="number"] {
-moz-appearance: textfield;
}
发现火狐浏览器不兼容,下面附vue自定义指令
directives: {
limit: {
// 指令的定义
update: function (el) {
el.onkeypress = function (e) {
var code = e.charCode;
if (code != 0) {
if (!String.fromCharCode(code).match(/[0-9\.]/)) {
return false;
}
}
}
el.addEventListener('textInput', function (e) {
e.target.value = e.target.value.replace(/[^0-9\.]/g, '')
})
el.onkeyup = function (e) {
e.target.value = e.target.value.replace(/[^0-9\.]/g, '')
}
}
}
},
用法: <input v-model="form.level" style="width: 132px" type="number" v-limit />
type='number'类型时可以输入字母e的处理
最新推荐文章于 2024-09-11 15:05:16 发布