簡體   English   中英

只有IE8 html文本框中的字符

[英]only characters in IE8 html text box

我想限制用戶只輸入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]'}); 

使用舊版瀏覽器的keyupmouseup事件:

 $('.alphaonly').on("keyup mouseup input", function () {
     $(this).val($(this).val().replace(/[^A-Za-zÀ-ÿ ]/g, ''));
 });​

IE <9不支持input事件。您可以使用keyupmouseup完成幾乎相同的功能。 此外,從jQuery 1.7開始,不推薦使用.live()而使用.on()

演示

Try this ...
$('.alphaonly').live({
   keyup : function () {
     $(this).val($(this).val().replace(/[^A-Za-zÀ-ÿ ]/g, ''));
   }
});
//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;
 }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM