it-swarm.com.de

Formular mit Enter-Taste ohne Submit-Button abschicken?

Mögliches Duplikat:
HTML: Senden eines Formulars durch Drücken der Eingabetaste ohne Senden-Schaltfläche

Wie kann ich ein Formular mit nur der Eingabetaste in einem Texteingabefeld senden, ohne eine Senden-Schaltfläche hinzufügen zu müssen?

Ich erinnere mich, dass dies in der Vergangenheit funktioniert hat, aber ich habe es jetzt getestet und das Formular wird erst gesendet, wenn es ein Eingabefeld vom Typ "Senden" enthält.

116
Alex
$("input").keypress(function(event) {
    if (event.which == 13) {
        event.preventDefault();
        $("form").submit();
    }
});
208
timmah.faase

Ändern Sie #form in die ID Ihres Formulars

$('#form input').keydown(function(e) {
    if (e.keyCode == 13) {
        $('#form').submit();
    }
});

Oder alternativ

$('input').keydown(function(e) {
    if (e.keyCode == 13) {
        $(this).closest('form').submit();
    }
});
47
Jay Gilford

Die Antwort von Jay Gilford wird funktionieren, aber ich denke, der einfachste Weg ist, einfach einen display: none; Auf einen Absenden-Button im Formular zu klicken.

14
Brian Glaz

@ JayGuilfords Antwort ist gut, aber wenn Sie keine JS-Abhängigkeit möchten, können Sie ein submit-Element verwenden und es einfach mit display: none; Ausblenden.

5
FtDRbwLXw6