Wie zu erkennen SHIFT-Taste in jQuery keydown-Ereignis-handler?

Ich habe die folgende jQuery-Funktion

jQuery.fn.integerMask =
function () {
return this.each(function () {
  $(this).keydown(function (e) {
    var key = (e.keyCode ? e.keyCode : e.which);
    //allow backspace, tab, delete, arrows, numbers and keypad numbers ONLY
    return (
              key == 8 ||
              key == 9 ||
              key == 46 ||
              key == 37 ||
              key == 39 ||
              (key >= 48 && key <= 57) ||
              (key >= 96 && key <= 105));
              );
      });
    });
  };

das für die Eingabe von zahlen. Das problem ist, dass SHIFT+8 Ergebnisse in ein asterisk-Zeichen " * " eingegeben werden. Es erscheint die "8" - Taste in Kombination w/der Wechsel ist erlaubt. Wie kann ich verhindern, dass der SHIFT+8 akzeptiert werden, und ein Zeichen "*" eingefügt?

  • es ist ein boolean e.shiftKey
  • Zu erarbeiten, die auf Davids Kommentar. Was Sie tun müssen, ist zu testen, ob e.shiftKey=wahr ist, was darauf hindeuten würde, eine shift-Taste gedrückt wurde und dann den Wert false zurück.
InformationsquelleAutor ChrisP | 2013-04-24
Schreibe einen Kommentar