Ich habe eine Schaltfläche, die ein Formular übermittelt, aber ich möchte auch, dass es eine Verknüpfung zu einer anderen Seite. Ich möchte nur, dass es mit der nächsten Seite verlinkt, wenn alle Felder im Formular ausgefüllt sind (alle Felder sind Pflichtfelder). Ich denke, dies wird JavaScript beinhalten, was in Ordnung ist, aber ich möchte jQuery vermeiden. Vielen Dank.Wie kann ich eine Schaltfläche zur nächsten Seite nur gehen, wenn alle Formularfelder nicht leer sind
Antwort
Die Art und Weise in der Regel es tun, ist, mit POST
-Redirect-GET
Normalform Vorlage kombinieren (der Server die Formulareinreichung akzeptiert, dann die Seite umleitet).
Mit normaler Formularübermittlung, alles, was Sie tun müssen, ist die Felder wie required
wie so markiert:
<form method="post" action="/what/ever">
<label>Name: <input required></label>
<label>Email: <input type="email" required></label>
<input type="submit" value="Send">
</form>
Nachdem die Formulareinreichung erfolgreich ist, leiten Sie die Seite vom Server -Seite zur nächsten Seite (oder zu einer Fehlerseite, falls etwas schief gelaufen ist).
Die Formularüberprüfung kann auf der Clientseite einfach mit dem Feld HTML5 required
durchgeführt werden.
<input type="text" required />
Alle Browser unterstützen jedoch nicht HTML5 und für diese können Sie eine JavaScript-basierte Lösung verwenden. Dies kann auf unendlich viele Arten implementiert werden. Zum Beispiel durch Hinzufügen eines Ereignis-Listeners auf der Übergabeschaltfläche, Überprüfen, dass alle Felder nicht leer sind und andernfalls die Übermittlung verhindern.
var form = document.forms["form-name"];
var formFields = form.getElementsByTagName("input");
form.addEventListener("submit", function (event) {
var validationOk = true;
for (var i = 0; i < formFields.length; i++) {
if (formFields[i].value == "") {
validationOk = false;
// Here you probably also want to give the user some kind
// of feedback by adding a class to the field or similar
}
}
if (!validationOk) {
event.preventDefault();
}
});
Beachten Sie jedoch, dass aus Sicht der Sicherheit, sollten Sie nie Vertrauen Validierung Client-Seite, sondern tut es Server-Seite, solange die Überprüfung zum Zweck der Verbesserung der Benutzererfahrung nicht nur.
- 1. Kann nicht zur nächsten Seite gehen
- 2. Text (TextBox) aktualisiert verloren, wenn Gridview zur nächsten Seite gehen
- 3. Gridview bearbeiten Zeile zur nächsten Seite in asp.net gehen
- 4. Zurück Schaltfläche wird nicht zur vorherigen Seite gehen Android
- 5. jQuery validate nächsten 3 Formularfelder Onkeyup, wenn vorherige Formularfelder gefüllt
- 6. Async.waterfall nicht zur nächsten Funktion gehen
- 7. Durch Eingabetext gehen, wenn sie gefüllt oder leer sind
- 8. String kann nicht eingegeben werden und zur nächsten Eingabeaufforderung gehen
- 9. Wie kann ich zur nächsten Seite in Scrapy springen
- 10. ASP.NET Deaktivieren Schaltfläche "Senden" nur, wenn alle Steuerelemente validiert sind
- 11. ASP.NET MVC Razor - Alle Formularfelder sind erforderlich?
- 12. koa-static zur nächsten Middleware gehen
- 13. jQuery, Klasse hinzufügen Button, wenn alle Eingaben nicht leer sind
- 14. Steigern Sie die Leistung, wenn Sie zur nächsten Seite mit .tif Bilder gehen
- 15. Wie kann ich zum nächsten Suchergebnis in Xcode gehen
- 16. Nur Attribute aktualisieren, die nicht leer sind
- 17. Automatisch zur nächsten Zeile in vim gehen
- 18. Spalte ausblenden, wenn alle Zeilen leer sind
- 19. So validieren Sie Formularfelder, bevor Sie zur nächsten Folie wechseln
- 20. Ich kann nicht mit xmlhttp auf die nächste Seite gehen
- 21. Wie gehe ich zur nächsten Seite ++ in UIPageviewController, wenn ich auf UIButton in iOS
- 22. Gehe zur nächsten aspx Seite mit HtmlUnit
- 23. Zur nächsten Seite der Objekte wechseln
- 24. zur nächsten Zeile gehen und ersetzen
- 25. wenn leer sogar gelingt, wenn die Variablen nicht leer sind
- 26. A href gehen auf der nächsten Seite, wenn ich auf Sterne Bewertung klicken
- 27. Wie kann ich meine Daten in zur nächsten Zeile speichern, nachdem eine Schaltfläche in Excel-VBA
- 28. Schaltfläche deaktiviert, während erforderliche Felder leer sind
- 29. Wie gehe ich zur nächsten Schaltfläche, wenn die erste in Selenium Java deaktiviert ist?
- 30. Drop-Down-Wert kann nicht zur nächsten Seite mit Ajax
http://www.w3schools.com/js/js_validation.asp –