ユーザーが html テキスト ボックスに文字のみを入力するように制限したい。次のコードを使用しています
$('.alphaonly').live("input", function () {
$(this).val($(this).val().replace(/[^A-Za-zÀ-ÿ ]/g, ''));
});
これは IE9 では問題なく動作しますが、IE8 では失敗します。
誰でも修正を手伝ってもらえますか?
ユーザーが html テキスト ボックスに文字のみを入力するように制限したい。次のコードを使用しています
$('.alphaonly').live("input", function () {
$(this).val($(this).val().replace(/[^A-Za-zÀ-ÿ ]/g, ''));
});
これは IE9 では問題なく動作しますが、IE8 では失敗します。
誰でも修正を手伝ってもらえますか?
つまり、プラグインを使用する方がはるかに簡単です。
http://www.thimbleopensource.com/tutorials-snippets/jquery-plugin-filter-text-input
$('#text_input').filter_input({regex:'[a-z]'});
古いブラウザーにはkeyup
andイベントを使用します。mouseup
$('.alphaonly').on("keyup mouseup input", function () {
$(this).val($(this).val().replace(/[^A-Za-zÀ-ÿ ]/g, ''));
});
このinput
イベントは IE < 9 ではサポートされていません。 と を使用してほぼ同じ機能を実行できます。また、jQuery 1.7 の時点で、は推奨されなくなりました。keyup
mouseup
.live()
.on()
デモ。
//If you consider doing it plain JavaScript way, without JQuery
function lettersOnly(evt) {
evt = (evt) ? evt : event;
var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode :
((evt.which) ? evt.which : 0));
if (charCode > 31 && (charCode < 65 || charCode > 90) &&
(charCode < 97 || charCode > 122)) {
alert("Enter letters only.");
return false;
}
return true;
}
Try this ...
$('.alphaonly').live({
keyup : function () {
$(this).val($(this).val().replace(/[^A-Za-zÀ-ÿ ]/g, ''));
}
});