input限制输入
Posted jonlyzhang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了input限制输入相关的知识,希望对你有一定的参考价值。
要求:input框只能输入0-12的数字,且当输入数字大于12,则值为最大值12,输入数字小于0,则值为最小值0。
<input type="text" oninput="limiteValue(this)" onpropertychange="limiteValue(this)"/>
注:oninput 事件在用户输入时触发。该事件在 <input> 或 <textarea> 元素的值发生改变时触发。这里主要应用于非IE浏览器下值的改变时触发该oninput事件。
而IE9以下版本的浏览器不支持oninput事件,所以需要使用ie的专属事件onpropertychange(属性值改变时触发)。
提示: oninput,onpropertychange事件类似于 onchange 事件。不同之处在于 oninput,onpropertychange 事件在元素值发生变化是立即触发, onchange 在元素失去焦点时触发,且onpropertychange为IE专属。
function limiteValue(obj){
obj.value=obj.value.replace(/[^d]/g,‘‘);//输入的值仅是数字
if(obj.value>12){
obj.value=12;
}
if(obj.value<0){
value=0;
}
if(obj.value.length>2){ //2位数字
obj.value=obj.value.slice(0,2);
}
if(obj.value.substr(0,1) == ‘0‘ && obj.value.length == 2){ //当输入00,01这类时,去除首数字0
obj.value= obj.value.substr(1,obj.value.length);
}
}
以上是关于input限制输入的主要内容,如果未能解决你的问题,请参考以下文章