2013-07-28 87 views
1
$('input').keypress(function(e) { 
     var regex = new RegExp("^[a-zA-Z0-9]+$"); 
     var key = String.fromCharCode(!event.charCode ? event.which : event.charCode); 
     if (!regex.test(key)) { 
      event.preventDefault ? event.preventDefault() : event.returnValue = false; 
     } 
    }); 

如何解決這個在IE中工作。這個想法是爲了逃避按鍵上的特殊字符。在Chrome,Mozilla等中運行良好,但IE忽略所有按鍵功能,即使它對regexp有效。event.preventDefault();作品奇怪的IE瀏覽器

回答

1

使用下面的代碼

$('input').keypress(function(e) { 
    var regex = new RegExp("^[a-zA-Z0-9]+$"); 
    var key = String.fromCharCode(!e.charCode ? e.which : e.charCode); 
    if (!regex.test(key)) { 
     e.preventDefault ? e.preventDefault() : e.returnValue = false; 
    } 
}); 
+0

我怎麼會錯過...謝謝兄弟 –

0
$('input').keypress(function(e) <--- use e.preventDefault(); 

$('input').keypress(function(event) <--- use event.preventDefault(); 

傳遞給函數無論PARAM,用它來調用事件對象。