需要修改一个简单的jQuery函数才能在Internet Explorer上运行

时间:2012-02-21 04:20:11

标签: jquery internet-explorer

以下简单的jQuery函数在Mozilla Firefox(5.0)上运行完美,但在Internet Explorer(4.0)上不起作用。

$(document).ready(function()
{
     $("#textFieldId").keypress(function(event)
     {
         if (event.keyCode==46 || event.keyCode==8|| event.keyCode==9 || event.keyCode>=35 && event.keyCode<=40)
         {
              // let it happen, don't do anything
         }
         else
         {
              if (event.charCode<48 || event.charCode>57 || event.charCode==16)
              {
                   event.preventDefault();
              }
         }
    });
});

此功能仅允许给定文本字段中的数字。应该对它进行哪些更改,以便它可以在Internet Explorer上运行?

1 个答案:

答案 0 :(得分:1)

如果您正在寻找其他替代方案,请尝试this

  function isNumberKey(evt)
  {
     var charCode = (evt.which) ? evt.which : event.keyCode
     if (charCode > 31 && (charCode < 48 || charCode > 57))
        return false;

     return true;
  }

和HTML as

 <INPUT id="txtChar" onkeypress="return isNumberKey(event)" type="text" name="txtChar">