其實是有兩種做法的,第一種,當輸入框狀态改變的時候,即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;
}
});
}