6

ユーザーがキーストロークを行った後(たとえば、テキストボックスで)キーストロークをキャンセルすることは可能です(クロスブラウザー互換)

現在使用しているコードは、キーストロークが表示された後にテキストボックスの値を編集します。

$('.number').keypress(function() {
    this.value = this.value.replace(/[^0-9\.]/g, '');
});
4

2 に答える 2

4
$('.number').keypress(function() {
    if ( this.value == 'foobar' ){
        // "Cancel" keystroke
        return false;
    }
    this.value = this.value.replace(/[^0-9\.]/g, '');
});
于 2010-05-31T15:21:21.887 に答える
4

解決済み(および更新済み)

申し訳ありませんが、最も明白なオプションをテストしませんでした-うまくいきました:

$('.number').keypress(function(event) {
    return /[0-9\.]/.test(String.fromCharCode(event.keyCode));
});
于 2010-05-31T15:27:57.237 に答える