Rumah >hujung hadapan web >tutorial js >Kaedah JavaScript untuk menentukan sama ada pengguna telah mengubah suai kemahiran form_javascript
Contoh dalam artikel ini menerangkan cara JavaScript menentukan sama ada pengguna telah mengubah suai borang. Kongsikan dengan semua orang untuk rujukan anda. Analisis khusus adalah seperti berikut:
Kod JS ini boleh menentukan sama ada pengguna telah mengubah suai kandungan borang Jika borang diubah suai dan pelayar keluar, pengguna akan diingatkan sama ada untuk menyimpan kandungan borang itu.
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; }
Contoh penggunaan: Apabila keluar dari penyemak imbas, jika pengguna mengubah suai borang, ingatkan pengguna sama ada untuk menyimpannya
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."; } };
Berikut ialah kod sampel lengkap