Bhavesh
Bhavesh

Reputation: 4677

A simple jQuery function needs to be modified to run on Internet Explorer

The following simple jQuery function works perfectly on Mozilla Firefox(5.0) but doesn't work on 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();
              }
         }
    });
});

This function is meant to allow only digits in a given text field. What changes should be made to it so that it can work on Internet Explorer?

Upvotes: 0

Views: 107

Answers (1)

Exception
Exception

Reputation: 8379

Try this, if you are looking for any other alternative.

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

     return true;
  }

and HTML as

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

Upvotes: 1

Related Questions