Rumah >hujung hadapan web >tutorial js >Bagaimana untuk menyemak bahawa borang HTML telah diubah
perubahan dalam data borang sering diabaikan. Artikel ini menerangkan kaedah yang cekap untuk tugas penting ini.
Takeaways utama:
onchange
mengapa mengesan kemas kini borang?
Mengesan perubahan bentuk membolehkan beberapa penambahbaikan:
batasan onchange
mengalami beberapa kelemahan: onchange
onchange
onchange
Overhead onchange
onchange
Pendekatan yang lebih mantap: Membandingkan nilai lalai
Setiap elemen bentuk mempunyai harta nilai lalai yang mencerminkan keadaan awalnya. Membandingkan nilai lalai ini kepada nilai semasa dengan pasti mengesan perubahan. Walau bagaimanapun, harta tertentu berbeza:
Input Teks dan Textareas:
unsur -unsur ini menggunakan hartadefaultValue
Ini berfungsi untuk jenis input standard dan html5 (e -mel, tel, url, dll.). var name = document.getElementById("name"); if (name.value !== name.defaultValue) alert("#name has changed");
kotak semak dan butang radio:
ini menggunakan harta nota: Pilih kotak (dropdowns):
harta elemen pilihan mereka: . Mengendalikan pelbagai pilihan kotak dan senario pilihan tanpa atribut memerlukan logik gelung yang lebih canggih untuk membandingkan
Walaupun kaedah di atas adalah berkesan, fungsi JavaScript yang boleh digunakan semula, yang mengendalikan semua jenis bentuk di seluruh pelayar adalah sangat wajar. Artikel masa depan akan menangani ini.
Seksyen Soalan Lazim meliputi pelbagai aspek mengesan perubahan bentuk HTML, termasuk menggunakan bahasa JavaScript, jQuery, pelayan sisi pelayan, menghalang navigasi dengan perubahan yang tidak disimpan, dan mengendalikan jenis elemen bentuk tertentu. (Soalan Lazim Asal ditinggalkan untuk keringkasan, tetapi maklumat yang mereka kerjakan diringkaskan di atas). defaultChecked
(boolean): var name = document.getElementById("name");
if (name.value !== name.defaultValue) alert("#name has changed");
defaultValue
, bukan keadaan yang diperiksa. value
defaultSelected
var optin = document.getElementById("optin");
if (optin.checked !== optin.defaultChecked) alert("#optin has changed");
Ini berfungsi untuk kotak pilih pilihan tunggal dengan atribut selected
dan selected
untuk setiap pilihan. selected
defaultSelected
Atas ialah kandungan terperinci Bagaimana untuk menyemak bahawa borang HTML telah diubah. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!