Heim >Web-Frontend >Front-End-Fragen und Antworten >So senden Sie ein Formular mit JavaScript
In der Webentwicklung ist ein Formular ein häufiges Element, das es Benutzern ermöglicht, Daten an einen Webserver zu übermitteln. Wenn der Benutzer Daten in das Formular eingibt und auf die Schaltfläche „Senden“ klickt, sendet das Formular eine Anfrage an den Server, und der Server verarbeitet die Anfrage und antwortet mit dem Ergebnis. In diesem Prozess kann JavaScript verwendet werden, um das Formularübermittlungsereignis abzuhören, sodass die Formulardaten verarbeitet und überprüft werden können, ohne dass die Seite aktualisiert werden muss. In diesem Artikel erfahren Sie, wie Sie ein Formular mit JavaScript senden.
1. Formularsteuerelemente
Bevor wir JavaScript zum Senden eines Formulars verwenden, müssen wir zunächst einige Kenntnisse über HTML-Formularsteuerelemente erwerben. Zu den Formularsteuerelementen gehören Eingabefelder, Dropdown-Felder, Optionsfelder, Kontrollkästchen usw. In HTML werden diese Steuerelemente mit d5fd7aea971a85678ba271703566ebfd-Tags definiert, und jedes Tag verfügt über ein Typattribut, um seinen Typ darzustellen. Beispielsweise kann ein Eingabefeld zum Eingeben von Text das Tag 23efcc05e98690ceeb219581933e4231 verwenden, und eine Schaltfläche zum Senden eines Formulars kann das Tag 54b28e0e73a12e4a8ed487872a6fb5b8 verwenden. Im Folgenden sind einige häufig verwendete Formularsteuerelemente und ihre Typen aufgeführt:
1 Textfeld
b97cf5df8b28e4a76caaaadaf8e76d05#🎜🎜 #
2. Passwortfeld941744aa44fdd721c0b67eb5ad94b3193. Kontrollkästchen#🎜 🎜#b040b7b4316a7b5680280723ad00e2b4Swimming
4. Optionsfeld
0a11adf858945d518991dfcbbdf3da9cMale
5. Dropdown-Feld
27635b6fcc057cb18cd9e06a4cbf5a69
< ;option value="beijing">Peking4afa15d3069109ac30911f04c56f3338 aa0a9f38537fae184d8689c927ff3b02Shanghai4afa15d3069109ac30911f04c56f3338
df9b1a06c7c7872194b28a87d3374989Guangzhou < ;/option> Ereignis senden. In HTML wird das Formularübermittlungsereignis durch das Tag ff9c23ada1bcecdd1a0fb5d5a0f18437 definiert und Sie können es mit der Methode addEventListener() von JavaScript abhören. Der folgende Code wartet beispielsweise auf Ereignisse, wenn auf die Schaltfläche „Senden“ geklickt wird:
var btnSubmit = document.getElementById("btnSubmit");
btnSubmit.addEventListener("click", function (event) {
event.preventDefault(); //Standardübermittlungsverhalten verbieten
});In diesem Beispiel werden wir zuerst Übergeben Sie die Methode getElementById(), um das Element der Schaltfläche „Senden“ abzurufen, und rufen Sie die Methode addEventListener() auf, um auf ihr Klickereignis zu warten. In der Event-Handler-Funktion können wir die Formulardaten abrufen und verarbeiten. Um schließlich zu verhindern, dass das Standardübermittlungsverhalten des Formulars auftritt, rufen wir die Methode event.preventDefault() auf, um es abzubrechen.
3. Formulardaten abrufen
Nachdem wir uns das Formularübermittlungsereignis angehört haben, müssen wir die Formulardaten zur Verarbeitung abrufen. In JavaScript können Sie die Sammlung document.forms[] verwenden, um Formularelemente abzurufen. Der folgende Code ruft beispielsweise die Eingabefeldelemente ab, die den Benutzernamen und das Passwort darstellen:
var txtPassword = document.forms[0 ].password ;
In diesem Beispiel verwenden wir document.forms[0], um das Formularelement des ersten ff9c23ada1bcecdd1a0fb5d5a0f18437-Tags abzurufen, und dann die Elemente der Benutzernamen- und Passwort-Eingabefelder durch das Namensattribut.
Eine andere Möglichkeit, Formulardaten abzurufen, ist die Verwendung eines FormData-Objekts. FormData ist eine neue API, mit der Formulardaten erstellt und an den Server gesendet werden können. Der folgende Code verwendet beispielsweise ein FormData-Objekt, um Benutzerinformationen zu übergeben:
var formData = new FormData();
formData.append("username", txtUsername.value);# 🎜🎜#formData .append("password", txtPassword.value);
In diesem Beispiel erstellen wir zunächst ein neues FormData-Objekt und verwenden dann die Methode append(), um Formulardaten zum hinzuzufügen FormData-Objekt. Übergeben Sie abschließend das FormData-Objekt an die send()-Methode des XMLHttpRequest-Objekts, um die Formulardaten an den Server zu senden.
4. Formulardaten überprüfen
Vor dem Absenden des Formulars müssen wir die Formulardaten überprüfen. Beispielsweise können wir prüfen, ob der Benutzername und das Passwort leer sind:
if(txtUsername.value == "") {
return false; //Übermittlung abbrechen
} else if(txtPassword.value == "") {warning("Bitte geben Sie Ihr Passwort ein");# 🎜🎜# txtPassword.focus();
return false; //Übermittlung abbrechen} else {
//Formular senden return true;
}#🎜🎜 ##🎜 🎜#In diesem Beispiel prüfen wir zunächst, ob das Eingabefeld für den Benutzernamen leer ist. Wenn es leer ist, wird ein Eingabeaufforderungsfeld angezeigt und der Cursor wird zum Eingabefeld für den Benutzernamen bewegt. Wenn der Benutzername nicht leer ist, prüfen wir weiterhin, ob das Passwort-Eingabefeld leer ist. Wenn das Passwort nicht leer ist, erlauben wir die Formularübermittlung.
5. Vollständiges JavaScript-Codebeispiel
Jetzt haben wir gelernt, wie man ein Formular mit JavaScript sendet. Hier ist ein vollständiges JavaScript-Codebeispiel, das auf das Submit-Ereignis des Formulars wartet, die Formulardaten abruft, die Daten validiert und an den Server sendet:
var frmLogin = document.getElementById("frmLogin");
frmLogin.addEventListener("submit", function(event) {
var txtUsername = document.forms[0].username;
var txtPassword = document.forms[0] .password;
if(txtUsername.value == "") {
alert("请输入用户名"); txtUsername.focus(); event.preventDefault();
} else if(txtPassword.value == "") {
alert("请输入密码"); txtPassword.focus(); event.preventDefault();
} else {
var formData = new FormData(); formData.append("username", txtUsername.value); formData.append("password", txtPassword.value); var xhr = new XMLHttpRequest(); xhr.open("POST", "login.php", true); xhr.onload = function() { if(xhr.status == 200) { alert(xhr.responseText); } else { alert("请求失败:" + xhr.status); } }; xhr.send(formData); event.preventDefault();
}
});
in diesem Im Beispiel rufen wir zunächst das Element ab, das das Anmeldeformular darstellt, über die Methode getElementById() und rufen die Methode addEventListener() auf, um auf das Übermittlungsereignis zu warten. In der Ereignisverarbeitungsfunktion erhalten wir die Eingabefeldelemente Benutzername und Passwort und fällen eine Beurteilung. Wenn die Anforderungen nicht erfüllt sind, wird ein Eingabeaufforderungsfeld angezeigt und das standardmäßige Übermittlungsverhalten des Formulars wird abgebrochen. Wenn weder Benutzername noch Passwort leer sind, wird ein FormData-Objekt erstellt und die Daten werden diesem hinzugefügt. Verwenden Sie abschließend das XMLHttpRequest-Objekt, um das FormData-Objekt an den Server zu senden und das Antwortergebnis im Eingabeaufforderungsfeld anzuzeigen.
Das obige ist der detaillierte Inhalt vonSo senden Sie ein Formular mit JavaScript. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!