Heim > Artikel > Web-Frontend > JavaScript-Methode, um festzustellen, ob der Benutzer die form_javascript-Fähigkeiten geändert hat
Das Beispiel in diesem Artikel beschreibt, wie JavaScript ermittelt, ob der Benutzer das Formular geändert hat. Teilen Sie es als Referenz mit allen. Die spezifische Analyse lautet wie folgt:
Mit diesem JS-Code kann festgestellt werden, ob der Benutzer den Formularinhalt geändert hat und der Browser beendet wird. Dies ist ein sehr nützlicher Code.
function formIsDirty(form) { for (var i = 0; i < form.elements.length; i++) { var element = form.elements[i]; var type = element.type; if (type == "checkbox" || type == "radio") { if (element.checked != element.defaultChecked) { return true; } } else if (type == "hidden" || type == "password" || type == "text" || type == "textarea") { if (element.value != element.defaultValue) { return true; } } else if (type == "select-one" || type == "select-multiple") { for (var j = 0; j < element.options.length; j++) { if (element.options[j].selected != element.options[j].defaultSelected) { return true; } } } } return false; }
Verwendungsbeispiel: Wenn der Benutzer beim Verlassen des Browsers das Formular ändert, erinnern Sie ihn daran, ob es gespeichert werden soll
window.onbeforeunload = function(e) { e = e || window.event; if (formIsDirty(document.forms["someForm"])) { // For IE and Firefox if (e) { e.returnValue = "You have unsaved changes."; } // For Safari return "You have unsaved changes."; } };
Das Folgende ist ein vollständiger Beispielcode