文本框只能輸入數(shù)字網(wǎng)頁代碼

字號:


    方法一、四事件組合完合可以實現(xiàn)文本框只能輸入數(shù)字
    <input type="text"
    onkeypress = 'return /^\d$/.test(String.fromCharCode(event.keyCode))'
    oninput= 'this.value = this.value.replace(/\D+/g, "")'
    onpropertychange='if(!/\D+/.test(this.value)){return;};this.value=this.value.replace(/\D+/g, "")'
    onblur = 'this.value = this.value.replace(/\D+/g, "")'/>
    方法二、jquery法實現(xiàn)文本框只能輸入數(shù)字
    控制文本框只能輸入數(shù)字是一個很常見的需求,比如電話號碼的輸入、數(shù)量的輸入等,這時候就需要我們控制文本框只能輸入數(shù)字。在用js控制之后在英文輸入法的狀態(tài)下去敲擊鍵盤上的非數(shù)字鍵是輸不進(jìn)去的,然而當(dāng)你轉(zhuǎn)到中文輸入法的時候輸入的是中文,再按空格或回車鍵,中文或英文字母就輸進(jìn)去了,這時候就需要我們在文本框得到焦點的時候把輸入法關(guān)閉,就是不響應(yīng)輸入法的切換。如下語句可以實現(xiàn)這樣的功能。
    下面的語句是用jquery寫的,控制class為checkNum的文本框只能輸入數(shù)字和小數(shù)點。
    Js代碼 收藏代碼
    //監(jiān)聽鍵盤,只允許輸入數(shù)字和小數(shù)點
    $(".checkNum").keypress(function(event) {
    var keyCode = event.which;
    if (keyCode == 46 || (keyCode >= 48 && keyCode <=57))
    return true;
    else
    return false;
    }).focus(function() {
    this.style.imeMode='disabled';
    });
    imeMode有四種形式,分別是:
    active 代表輸入法為中文
    inactive 代表輸入法為英文
    auto 代表打開輸入法 (默認(rèn))
    disable 代表關(guān)閉輸入法