js 限制输入框只能输入数字的问题
常规情况下,input设置为 type=‘number’ 可以避免汉字,字符,字母,空格的输入,但是不能避免小减号 以及小键盘的减号-,加号+的输入,
可以考虑 监控 输入框的oninput事件,方式如下:
<input type=\’number\’ oninput=\’handleInput\’ >
function handleInput(e){
this.value = e.target.value.replace(/\D+/g, \’\’);
}
最好的方式是利用指令的方式,方法如下:
Vue.direcetives(\’onlyNumber\’,{
bind:function(el){
var handler = function(e){
e.value = e.target.value.replace(/\D+/g, \’\’)
}
el,addEventListener(\’input\’, handler )
},
unbind:function(el){
el.removeEventListener(\’input\’)
}
})