Heim >Web-Frontend >js-Tutorial >## Warum verschwindet mein Anmeldeformular, wenn ich die Eingabetaste drücke?
Senden eines Formulars auf „Enter“ mit jQuery: Beheben des Problems mit verschwindenden Formularen
Sie sind auf ein Problem gestoßen, bei dem Sie auf „Enter“ gedrückt haben Ihr Anmeldeformular führt dazu, dass der Formularinhalt ohne Absenden verschwindet. Dies wirft die Frage auf, ob es sich um ein Webkit-Problem oder ein Problem mit Ihrem Code handelt.
Um dieses Verhalten zu beheben, haben Sie versucht, den folgenden jQuery-Code zu verwenden:
$('.input').keypress(function (e) { if (e.which == 13) { $('form#login').submit(); } });
Allerdings ist dieser Code hat das Problem nicht gelöst.
Lösung:
Um dieses Problem zu beheben, müssen Sie eine wichtige Zeile in Ihren jQuery-Code einfügen:
$('.input').keypress(function (e) { if (e.which == 13) { $('form#login').submit(); return false; //<---- Add this line } });
Diese Zeile verhindert das Standardverhalten des Formulars, nämlich das Löschen seines Inhalts bei „Enter“. Durch das Hinzufügen wird das Formular nun beim Drücken der Eingabetaste gesendet, ohne zu verschwinden.
Return False verstehen:
Die Anweisung „return false“ erzielt das gleiche Ergebnis wie Aufruf von e.preventDefault und e.stopPropagation. Es weist den Browser an, die Standardaktion (Formularlöschung) nicht auszuführen, und verhindert, dass das Ereignis in der DOM-Hierarchie nach oben sprudelt.
Das obige ist der detaillierte Inhalt von## Warum verschwindet mein Anmeldeformular, wenn ich die Eingabetaste drücke?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!