1

次のコードは IE9 と Chorme では問題なく動作しますが、mozilla では動作しません

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

ありがとう

4

2 に答える 2

1

に変更keyCodeするwhichと、ブラウザ間の互換性が大幅に向上します。フェイルオーバーを追加して、信頼性をさらに高めることができます。

$("#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();
    }
});
于 2013-03-07T03:57:09.753 に答える
0

これを試して:

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

      if (keycode < 46 || keycode > 57) {
        event.preventDefault();
       }
      else if (keycode == 47) {
        event.preventDefault();
       }
   });
于 2013-03-07T03:58:44.307 に答える