<input type="submit">
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
<input>
Elemente des Typs submit
werden als Schaltflächen dargestellt. Wenn das click
Ereignis eintritt (normalerweise, weil der Benutzer die Schaltfläche geklickt hat), versucht der User-Agent, das Formular an den Server zu senden.
Wert
Das value
Attribut eines <input type="submit">
Elements enthält eine Zeichenkette, die als Beschriftung der Schaltfläche angezeigt wird. Schaltflächen haben ansonsten keinen echten Wert. Der value
stellt die zugängliche Beschreibung für die Schaltfläche bereit.
Das value-Attribut setzen
<input type="submit" value="Send Request" />
Das value-Attribut weglassen
Wenn Sie kein value
angeben, hat die Schaltfläche eine Standardbeschriftung, die vom User-Agent gewählt wird. Diese Beschriftung wird wahrscheinlich etwa "Submit" oder "Submit Query" sein. Hier ist ein Beispiel für eine Schaltfläche mit einer Standardbeschriftung in Ihrem Browser:
<input type="submit" />
Zusätzliche Attribute
Zusätzlich zu den Attributen, die von allen <input>
Elementen geteilt werden, unterstützen submit
Schaltflächen folgende Attribute.
formaction
Ein String, der die URL angibt, an die die Daten gesendet werden sollen. Dies hat Vorrang vor dem action
Attribut auf dem <form>
Element, das das <input>
Element besitzt.
Dieses Attribut ist auch bei <input type="image">
und <button>
Elementen verfügbar.
formenctype
Ein String, der die Kodierungsmethode angibt, die beim Senden der Formulardaten an den Server verwendet werden soll. Es gibt drei erlaubte Werte:
application/x-www-form-urlencoded
-
Dies, der Standardwert, sendet die Formulardaten als Zeichenkette, nachdem die Textzeichen mit einem Algorithmus wie
encodeURI()
nach prozentcodierung kodiert wurden. multipart/form-data
-
Verwendet die
FormData
API zur Verwaltung der Daten, wodurch es möglich wird, Dateien an den Server zu senden. Sie müssen diesen Kodierungstyp verwenden, wenn Ihr Formular ein<input>
Element mit demtype
file
enthält (<input type="file">
). text/plain
-
Klartext; hauptsächlich nur für Debugging nützlich, damit Sie die zu sendenden Daten leicht sehen können.
Wenn angegeben, überschreibt der Wert des formenctype
Attributs das enctype
Attribut des besitzenden Formulars.
Dieses Attribut ist auch bei <input type="image">
und <button>
Elementen verfügbar.
formmethod
Ein String, der die HTTP-Methode angibt, die beim Senden der Formulardaten verwendet werden soll; dieser Wert überschreibt jedes method Attribut des besitzenden Formulars. Erlaubte Werte sind:
get
-
Eine URL wird konstruiert, indem mit der URL begonnen wird, die durch das
formaction
oderaction
Attribut angegeben wird, gefolgt von einem Fragezeichen ("?"), und dann durch Anhängen der Formulardaten, kodiert wie durchformenctype
oder dasenctype
Attribut des Formulars beschrieben. Diese URL wird dann mit einer HTTPget
Anfrage an den Server gesendet. Diese Methode funktioniert gut für einfache Formulare, die nur ASCII Zeichen enthalten und keine Nebenwirkungen haben. Dies ist der Standardwert. post
-
Die Formulardaten werden im Hauptteil der Anfrage an die URL gesendet, die durch das
formaction
oderaction
Attribut angegeben wird, unter Verwendung der HTTPpost
Methode. Diese Methode unterstützt komplexe Daten und Dateianhänge. dialog
-
Diese Methode wird verwendet, um anzuzeigen, dass die Schaltfläche den Dialog schließt, mit dem das Eingabeelement verbunden ist, und die Formulardaten überhaupt nicht übermittelt.
Dieses Attribut ist auch bei <input type="image">
und <button>
Elementen verfügbar.
formnovalidate
Ein Boolean-Attribut, das, wenn es vorhanden ist, angibt, dass das Formular vor dem Absenden an den Server nicht validiert werden soll. Dies überschreibt den Wert des novalidate
Attributs des besitzenden Formulars.
Dieses Attribut ist auch bei <input type="image">
und <button>
Elementen verfügbar.
formtarget
Ein String, der einen Namen oder ein Stichwort angibt, das angibt, wo die Antwort angezeigt werden soll, die nach dem Absenden des Formulars eingegangen ist. Der String muss der Name eines Browsing-Kontexts sein (d. h. eines Tabs, Fensters oder <iframe>
). Ein hier angegebener Wert überschreibt jedes Ziel, das durch das target
Attribut auf dem <form>
angegeben ist, das dieses Eingabeelement besitzt.
Zusätzlich zu den tatsächlichen Namen von Tabs, Fenstern oder Inline-Frames gibt es einige spezielle Schlüsselwörter, die verwendet werden können:
_self
-
Lädt die Antwort in den gleichen Browsing-Kontext, der das Formular enthält. Dadurch wird das aktuelle Dokument durch die empfangenen Daten ersetzt. Dies ist der Standardwert, der verwendet wird, wenn keiner angegeben ist.
_blank
-
Lädt die Antwort in einen neuen, unbenannten Browsing-Kontext. Dies ist typischerweise ein neuer Tab im gleichen Fenster wie das aktuelle Dokument, kann aber je nach Konfiguration des User-Agents unterschiedlich sein.
_parent
-
Lädt die Antwort in den übergeordneten Browsing-Kontext des aktuellen. Wenn es keinen übergeordneten Kontext gibt, verhält sich dies genauso wie
_self
. _top
-
Lädt die Antwort in den obersten Browsing-Kontext; dies ist der Browsing-Kontext, der der oberste Vorfahr des aktuellen Kontextes ist. Wenn der aktuelle Kontext der oberste Kontext ist, verhält sich dies genauso wie
_self
.
Dieses Attribut ist auch bei <input type="image">
und <button>
Elementen verfügbar.
Verwendung von Submit-Schaltflächen
<input type="submit">
Schaltflächen werden verwendet, um Formulare zu senden. Wenn Sie eine benutzerdefinierte Schaltfläche erstellen und das Verhalten dann mit JavaScript anpassen möchten, müssen Sie <input type="button">
oder besser noch ein <button>
Element verwenden.
Wenn Sie sich entscheiden, <button>
Elemente zu verwenden, um die Schaltflächen in Ihrem Formular zu erstellen, denken Sie daran: Wenn der <button>
in einem <form>
ist, wird diese Schaltfläche als "Senden"-Schaltfläche behandelt. Sie sollten daher immer ausdrücklich festlegen, welche Schaltfläche die Senden-Schaltfläche ist.
Eine einfache Submit-Schaltfläche
Wir beginnen mit der Erstellung eines Formulars mit einer einfachen Submit-Schaltfläche:
<form>
<div>
<label for="example">Let's submit some text</label>
<input id="example" type="text" name="text" />
</div>
<div>
<input type="submit" value="Send" />
</div>
</form>
Dies wird so dargestellt:
Versuchen Sie, Text in das Textfeld einzugeben und dann das Formular abzusenden.
Beim Absenden wird das Datenpaar Name/Wert an den Server gesendet. In diesem Fall wird die Zeichenkette text=user-text
sein, wobei "user-text" der vom Benutzer eingegebene Text, kodiert zur Erhaltung spezieller Zeichen, ist. Wohin und wie die Daten gesendet werden, hängt von der Konfiguration des <form>
ab; siehe Senden von Formulardaten für mehr Details.
Hinzufügen einer Tastenkombination zu einer Submit-Schaltfläche
Tastenkombinationen, auch Access Keys und Tastaturequivalente genannt, ermöglichen es dem Benutzer, eine Schaltfläche zu drücken, indem er eine Taste oder eine Tastenkombination auf der Tastatur verwendet. Um einer Submit-Schaltfläche eine Tastenkombination hinzuzufügen — genauso wie bei jedem <input>
, für das es sinnvoll ist — verwenden Sie das accesskey
globale Attribut.
In diesem Beispiel wird s als Zugriffstaste angegeben (Sie müssen s zusammen mit den speziellen Modifikatortasten für Ihre Browser/OS-Kombination drücken). Um Konflikte mit den eigenen Tastenkombinationen des User-Agents zu vermeiden, werden für Zugriffstasten andere Modifikatortasten als für andere Shortcuts auf dem Host-Computer verwendet. Siehe accesskey
für weitere Details.
Hier ist das vorherige Beispiel mit der s Zugriffstaste hinzugefügt:
<form>
<div>
<label for="example">Let's submit some text</label>
<input id="example" type="text" name="text" />
</div>
<div>
<input type="submit" value="Send" accesskey="s" />
</div>
</form>
Zum Beispiel, in Firefox für Mac, löst das Drücken von Control-Option-S die Sendeschaltfläche aus, während Chrome auf Windows Alt+S verwendet.
Das Problem mit dem obigen Beispiel ist, dass der Benutzer nicht wissen wird, was die Zugriffstaste ist! Dies gilt insbesondere, da die Modifikatoren typischerweise nicht standardisiert sind, um Konflikte zu vermeiden. Stellen Sie beim Erstellen einer Website sicher, dass diese Informationen auf eine Weise bereitgestellt werden, die das Design der Website nicht stört (zum Beispiel durch Bereitstellung eines leicht zugänglichen Links, der auf Informationen zu den Zugriffstasten der Website verweist). Das Hinzufügen eines Tooltips zur Schaltfläche (unter Verwendung des title
Attributs) kann auch helfen, obwohl es keine vollständige Lösung für Zugänglichkeitszwecke ist.
Deaktivieren und Aktivieren einer Submit-Schaltfläche
Um eine Submit-Schaltfläche zu deaktivieren, geben Sie das disabled
Attribut darauf an, so:
<input type="submit" value="Send" disabled />
Sie können Schaltflächen zur Laufzeit aktivieren und deaktivieren, indem Sie disabled
auf true
oder false
setzen; in JavaScript sieht dies wie btn.disabled = true
oder btn.disabled = false
aus.
Hinweis:
Weitere Ideen zum Aktivieren und Deaktivieren von Schaltflächen finden Sie auf der Seite <input type="button">
.
Validierung
Submit-Schaltflächen nehmen nicht an der Einschränkungsvalidierung teil; sie haben keinen echten Wert, der eingeschränkt werden könnte.
Beispiele
Wir haben oben grundlegende Beispiele angegeben. Es gibt wirklich nichts mehr über Submit-Schaltflächen zu sagen. Es gibt einen Grund, warum diese Art der Steuerung manchmal als "einfache Schaltfläche" bezeichnet wird.
Technische Zusammenfassung
Wert | Eine Zeichenkette, die als Schaltflächenbeschriftung verwendet wird |
Ereignisse | [`click`](/de/docs/Web/API/Element/click_event) |
Unterstützte gemeinsame Attribute |
type und
value
|
IDL-Attribute | value |
DOM-Schnittstelle | [`HTMLInputElement`](/de/docs/Web/API/HTMLInputElement) |
Methoden | Keine |
Implizite ARIA-Rolle | button |
Spezifikationen
Specification |
---|
HTML # submit-button-state-(type=submit) |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
<input>
und dieHTMLInputElement
Schnittstelle, die es implementiert.- Formulare und Schaltflächen
- HTML Formulare
- Das
<button>
Element