0

次のコードを使用すると、ユーザーは整数以外の値を入力できなくなります。

$(document).ready(function () {
    $("#ResponseDays").keydown(function (event) {
        if (event.keyCode == 46 || event.keyCode == 8) { }
        else {
            if (event.keyCode < 48 || event.keyCode > 57) {
                event.preventDefault();
            }
        }
    });
});

すべてがうまく機能しますが、ページには多くの整数入力があり、これを何度も貼り付けるとコードの見栄えが悪くなります。この関数を一度だけ書いて、多くの入力に対して機能させるにはどうすればよいですか?

4

2 に答える 2

0

この動作をさせたいすべての入力をクラスに与えてnumericから、クラスを介してハンドラーをアタッチできます。

$(document).ready(function () {
    $(".numeric").keydown(function (event) {
        if (event.keyCode == 46 || event.keyCode == 8) { }
        else {
            if (event.keyCode < 48 || event.keyCode > 57) {
                event.preventDefault();
            }
        }
    });
});
于 2013-04-27T04:32:04.350 に答える
0

html の場合:

次に、js $('input[type="tel"]').keydown(function (event) {....});

tel 属性を持つものはすべて単なる整数になり、モバイルではフルキーボードの代わりに電話入力がプルアップされます。今は電話ですが、省略記号を明らかにキーダウンイベントに置き換えてください。

于 2013-04-27T04:36:22.830 に答える