2012-09-25 64 views
0

的作品我用整數驗證以下Java腳本函數,這意味着該文本框可以只允許單獨進入整數值。 * 這是做工精細的在Internet Explorer和谷歌Chrome *。但我使用在Firefox相同功能,在文本框中不允許在這意味着它不允許的字符,數字,空格輸入任何字符,其他什麼......如何解決這個問題?驗證在Firefox並不工作,但在IE,Chrome的

javascript函數

$('.intValidate').live('keypress', function(event) { 
       var integervalidate = intValidate(event); 
       if (integervalidate == false) 
        return false; 
      }); 

function intValidate(event) { 
    if (event.keyCode == 46 || event.keyCode == 8 || event.keyCode == 9 || event.keyCode == 27 || event.keyCode == 13 ||(event.keyCode == 65 && event.ctrlKey === true) ||(event.keyCode >= 35 && event.keyCode <= 39)) 
     { 
      return; 
     } 
    else 
    { 
     if (event.shiftKey || (event.keyCode < 48 || event.keyCode > 57) && (event.keyCode < 96 || event.keyCode > 105)) 
     { 
      event.preventDefault(); 
     } 

我使用的類象

<input type="text" id="abcd" style="width:30px" maxlength="2"class="intValidate""/> 
+0

你嘗試只是將其更改爲' adeneo

回答

0

你的問題是,瀏覽器使用的按鍵事件不一致的方式。 閱讀this發表以得到一個很好的解釋與一個解決方案的例子。

0
keypress事件

你檢查鍵碼。您應該查看charCode值。

相關問題