0

Priceのテキストフィールドがあります。

整数値と浮動小数点値のみが必要です。

整数を実行しました。しかし、次のような Float 値を受け入れていません: 3110.6

これが私のコードデモです

JS:

$(document).ready(function () {
    $("#price").keydown(function (event) {
        // Allow only backspace and delete
        if (event.keyCode == 46 || event.keyCode == 8) {
            // let it happen, don't do anything
        } else {
            // Ensure that it is a number and stop the keypress
            if (event.keyCode < 48 || event.keyCode > 57) {
                event.preventDefault();
            }
        }
    });
});

HTML:

<input name="price" type="text" id="price">
4

4 に答える 4

2

このデモを試す

 $('#price').keypress(function(event) {
            if(event.which == 8 || event.which == 0){
                return true;
            }
            if(event.which < 46 || event.which > 59) {
                return false;
                //event.preventDefault();
            } // prevent if not number/dot

            if(event.which == 46 && $(this).val().indexOf('.') != -1) {
                return false;
                //event.preventDefault();
            } // prevent if already dot
        });
于 2013-10-31T07:06:02.207 に答える
1

これを使用するだけです:

<input name="price" type="number" id="price">

JavaScript コードを削除します。

于 2013-10-31T07:07:33.180 に答える
1

正規表現を試す

/^[+-]?\d+(\.\d+)?$/

onchange イベントで入力の値をテストするだけです。

于 2013-10-31T07:09:03.530 に答える