Enter-Taste Code in JavaScript

Für Enter gilt: event.key ist Enter, event.code ist Enter / NumpadEnter und der veraltete keyCode ist 13. Drücke eine beliebige Taste im Key Code Finder, um ihre Werte live zu sehen.

Aktualisiert am

EigenschaftWert
event.keyEnter
event.codeEnter / NumpadEnter
event.keyCode / which (veraltet)13

So erkennst du Enter

document.addEventListener('keydown', (event) => {
  if (event.key === "Enter" && !event.isComposing) {
    // Enter was pressed
  }
});

Verwende event.key, um auf die Bedeutung der Taste zu reagieren (sie folgt dem Tastaturlayout), und event.code für ihre physische Position, zum Beispiel WASD in Spielen. keyCode und which sind veraltet: Sie funktionieren noch, aber ihre Werte unterscheiden sich zwischen Browsern und Layouts.

Wie Browser Enter behandeln

Enter sendet ein Formular ab, wenn der Fokus in einem Textfeld liegt, und aktiviert Buttons und Links. Prüfe event.isComposing: Wenn jemand auf Chinesisch, Japanisch oder Koreanisch tippt, bestätigt Enter die Eingabe und sollte deine Aktion nicht auslösen. Die Enter-Taste im Ziffernblock hat denselben key, aber code NumpadEnter.

In React

<input onKeyDown={(e) => { if (e.key === "Enter") { /* … */ } }} />

Häufige Fragen

Welchen keyCode hat Enter?
13. Er ist allerdings veraltet: Verwende in neuem Code event.key („Enter“) oder event.code (Enter).
Was ist der Unterschied zwischen event.key und event.code?
event.key ist das Zeichen oder die Aktion, die die Taste mit dem aktuellen Layout erzeugt; event.code ist die physische Tastenposition und auf jedem Layout gleich.
Soll ich keydown oder keypress verwenden?
keydown. Das Ereignis keypress ist veraltet und wird bei Tasten, die kein Zeichen erzeugen, wie Escape oder die Pfeiltasten, nicht ausgelöst.