2013-03-07 3 views
1

Le code suivant fonctionne très bien IE9 et Chorme mais ne fonctionne pas dans mozillaméthode keypress Jquery ne fonctionne pas correctement dans Mozilla

$("#BasicSalary").keypress(function (event) { 
      if (event.keyCode < 46 || event.keyCode > 57) { 
      event.preventDefault(); 
      } 
      else if (event.keyCode == 47) { 
      event.preventDefault(); 
      } 
     }); 

Merci

+0

http://api.jquery.com/event.which/ –

Répondre

1

Changer keyCode à which et ce sera beaucoup plus cross-browser compatible. Vous pouvez ajouter un fail-over pour le rendre encore plus fiable:

$("#BasicSalary").keypress(function (e) { 

    var keyCode = (typeof e.which == "number") ? e.which : e.keyCode 

    if (keyCode < 46 || keyCode > 57) { 
     e.preventDefault(); 
    } else if (keyCode == 47) { 
     e.preventDefault(); 
    } 
}); 
0

Essayez ceci:

$("#BasicSalary").keypress(function (event) { 
     var keycode = event.keyCode || event.which; 

     if (keycode < 46 || keycode > 57) { 
     event.preventDefault(); 
     } 
     else if (keycode == 47) { 
     event.preventDefault(); 
     } 
    }); 
Questions connexes