其实是有两种做法的,第一种,当输入框状态改变的时候,即change事件时,将内容取出来,将所有的非数字字符,全替换为空,但这样挺别扭的,你一输入其它的,显示出来了,马上就消失了。第二种,就是以下的做法,监听键盘事件,如果不是数字键(分为两排,字母上面的一排与右边的数字键)则拦截掉该次按下事件,但也有弊端,就是粘贴的时候也还是会粘进来一些字符,或用鼠标拖拉文字,所以在提交时,需要做下判断,还有就是它除了数字键,其它的也给禁用了,包括删除键。。。
$(function() {
$('#save').button().click(function() {
$('#AdvertForm').submit();
});
$('#cancel').button().click(function() {
history.back();
});
$("#delayTime").keydown = keydown($("#delayTime"));
$("#playCount").keydown = keydown($("#playCount"));
});
function keydown(doc){
//doc为元素名称
$(doc).keydown(function(evt){
var kc = evt.keyCode;
var array = new Array(48,49,50,51,52,53,54,55,56,57,96,97,98,99,100,101,102,103,104,105);
var flag = true;
for(var i = 0;i < array.length && flag; i++){
if(kc == array[i]){
flag = false;
}
}
if(flag){
evt.keyCode = 0;
evt.returnValue=false;
return false;
}
});
}
js禁止输入非数字
最新推荐文章于 2023-06-06 08:54:43 发布