Die beste Art
Der beste Weg ist, ein geeignetes Eingabe-Tag einzufügen:
<input type="submit" value="submit" />
Der beste JS-Weg
<form id="form-id">
<button id="your-id">submit</button>
</form>
var form = document.getElementById("form-id");
document.getElementById("your-id").addEventListener("click", function () {
form.submit();
});
Fügen Sie den letzteren JavaScript-Code einem DOMContentLoaded
Ereignis hinzu (wählen Sie nur load
aus Gründen der Abwärtskompatibilität ), falls Sie dies noch nicht getan haben:
window.addEventListener("DOMContentLoaded", function () {
var form = document.... // copy the last code block!
});
Der einfache, nicht empfehlenswerte Weg (die frühere Antwort)
Fügen Sie onclick
dem Link und id
dem Formular ein Attribut hinzu :
<form id="form-id">
<a href="#" onclick="document.getElementById('form-id').submit();"> submit </a>
</form>
Alle Wege
Wie auch immer Sie sich entscheiden, Sie haben formObject.submit()
irgendwann einen Aufruf (wo formObject
ist das DOM-Objekt des <form>
Tags).
Sie müssen auch einen solchen Ereignishandler binden, der aufruft formObject.submit()
, damit er aufgerufen wird, wenn der Benutzer auf einen bestimmten Link oder eine bestimmte Schaltfläche klickt. Es gibt zwei Möglichkeiten:
Empfohlen: Binden Sie einen Ereignis-Listener an das DOM-Objekt.
// 1. Acquire a reference to our <form>.
// This can also be done by setting <form name="blub">:
// var form = document.forms.blub;
var form = document.getElementById("form-id");
// 2. Get a reference to our preferred element (link/button, see below) and
// add an event listener for the "click" event.
document.getElementById("your-id").addEventListener("click", function () {
form.submit();
});
Nicht empfohlen: Inline-JavaScript einfügen. Es gibt mehrere Gründe, warum diese Technik nicht empfehlenswert ist. Ein Hauptargument ist, dass Sie Markup (HTML) mit Skripten (JS) mischen. Der Code wird unorganisiert und eher nicht mehr wartbar.
<a href="#" onclick="document.getElementById('form-id').submit();">submit</a>
<button onclick="document.getElementById('form-id').submit();">submit</button>
Nun kommen wir zu dem Punkt, an dem Sie sich für das UI-Element entscheiden müssen, das den Aufruf von submit () auslöst.
Ein Knopf
<button>submit</button>
Eine Verbindung
<a href="#">submit</a>
Wenden Sie die oben genannten Techniken an, um einen Ereignis-Listener hinzuzufügen.
target="_blank"
scheint nicht zu funktionieren.