Readule dan dinonaktifkan keduanya memungkinkan pengguna untuk tidak mengubah konten di bidang Formulir. Tetapi ada sedikit perbedaan di antara mereka, dan ringkasannya adalah sebagai berikut:
Readonly hanya berfungsi untuk input (teks/kata sandi) dan TextArea, sedangkan dinonaktifkan valid untuk semua elemen formulir. Namun, setelah elemen formulir menggunakan dinonaktifkan, ketika kami mengirimkan formulir di pos atau dapatkan, nilai elemen ini tidak akan pingsan, dan readitly akan membagikan nilai (Readonly menerima perubahan nilai dan dapat dilewatkan, dinonaktifkan menerima perubahan tetapi tidak mengembalikan data).
Secara umum, situasi yang paling umum digunakan adalah:
Kode identifikasi yang unik lebih disukai untuk pengguna dalam formulir, dan pengguna tidak mengizinkan perubahan, tetapi nilainya perlu diteruskan saat mengirimkan, dan propertinya harus diatur ke readonly.
Sering ditemui ketika pengguna secara resmi mengirimkan formulir dan perlu menunggu informasi administrator untuk memverifikasi. Ini tidak memungkinkan pengguna untuk mengubah data dalam formulir lagi, tetapi hanya dapat melihatnya. Karena kisaran elemen yang dinonaktifkan besar, cacat harus digunakan pada saat ini, tetapi pada saat yang sama, harus dicatat bahwa tombol pengiriman juga harus dinonaktifkan. Jika tidak, selama pengguna menekan tombol ini, jika tidak ada deteksi integritas yang dilakukan di halaman operasi database, nilai dalam database akan dihapus. Jika Anda menggunakan ReadNyly alih -alih dinonaktifkan dalam kasus ini, jika hanya ada input (teks/kata sandi) dan elemen TextArea dalam formulir, itu masih mungkin. Jika ada elemen pengiriman lainnya, seperti SELECT, pengguna dapat menekan tombol ENTER untuk mengirimkan setelah menulis ulang nilai (ENTER adalah tombol pemicu pengiriman default)
Kami sering menggunakan JavaScript untuk menonaktifkan tombol Kirim setelah pengguna menekan tombol Kirim. Ini dapat mencegah pengguna untuk berulang kali mengklik tombol kirim di lingkungan dengan kondisi jaringan yang buruk, menyebabkan data disimpan secara berlebihan dalam database.
Dua sifat cacat dan readly hanya memiliki beberapa kesamaan. Misalnya, jika keduanya diatur ke true, properti formulir tidak akan diedit. Seringkali mudah untuk mencampur dua properti ini saat menulis kode JS. Bahkan, ada perbedaan tertentu di antara mereka:
Jika cacat item input diatur ke true, item input formulir tidak dapat mendapatkan fokus, dan semua operasi pengguna (klik mouse dan input keyboard, dll.) Tidak valid untuk item input. Poin yang paling penting adalah bahwa ketika formulir dikirimkan, item input formulir tidak akan dikirimkan.
ReadOnly hanya untuk item input yang dapat memasukkan teks seperti kotak input teks. Jika diatur ke True, pengguna tidak dapat mengedit teks yang sesuai, tetapi masih dapat fokus pada fokus, dan ketika mengirimkan formulir, item input akan dikirimkan sebagai formulir.