Saya telah membaca sedikit tentang ini, tetapi saya tidak dapat menemukan sesuatu yang solid tentang bagaimana browser berbeda memperlakukan sesuatu.
html
cross-browser
Andy
sumber
sumber
Jawaban:
Sebuah
readonly
elemen tidak dapat diedit, tetapi dikirim ketika sesuaiform
mengirimkan. Sebuahdisabled
elemen tidak dapat diedit dan tidak dikirim di submit. Perbedaan lainnya adalahreadonly
elemen dapat menjadi fokus (dan menjadi fokus ketika "menabrak" melalui formulir) sementaradisabled
elemen tidak bisa.Baca lebih lanjut tentang ini di artikel hebat ini atau definisi oleh w3c . Mengutip bagian penting:
sumber
disabled
menyiratkanreadonly
tetapireadonly
tidak menyiratkandisabled
. Dengan kata lain jika suatu elemen memilikidisabled
atribut maka tidak perlu juga menyertakanreadonly
atribut. Benar?Tidak ada peristiwa yang dipicu ketika elemen memiliki atribut yang dinonaktifkan.
Tak satu pun dari di bawah ini akan dipicu.
Sementara readonly akan terpicu.
sumber
Dinonaktifkan berarti bahwa tidak ada data dari elemen formulir yang akan dikirimkan saat formulir dikirimkan. Hanya Baca berarti setiap data dari dalam elemen akan dikirimkan, tetapi tidak dapat diubah oleh pengguna.
Sebagai contoh:
Ini akan mengirimkan nilai "Bob" untuk elemen "namamu".
Ini tidak akan mengirimkan apa pun untuk elemen "namamu".
sumber
readonly
dandisabled
merupakan nilai boolean. Gunakandisabled
sebagai gantidisabled="disabled"
(sama untuk hanya baca)attrname="attrname"
. Either way, itu tampaknya tidak didokumentasikan dengan baik, setidaknya tidak saya dapat menemukannya. Nah, ini dia - w3.org/TR/html4/intro/sgmltut.html#h-3.3.4.2 - tetapi hanya secara spesifik menyebutkan SGML dan HTML, bukan XHTML .... terlalu banyak akronim: SBoolean attributes may legally take a single value: the name of the attribute itself (e.g., selected="selected").
Jadi string kosong tampaknya tidak valid.Sama seperti jawaban lainnya (dinonaktifkan tidak dikirim ke server, hanya baca saja) tetapi beberapa browser mencegah penyorotan bentuk yang dinonaktifkan, sementara hanya baca masih dapat disorot (dan disalin).
http://www.w3schools.com/tags/att_input_disabled.asp
http://www.w3schools.com/tags/att_input_readonly.asp
sumber
Jika nilai kotak teks yang dinonaktifkan perlu dipertahankan ketika formulir dihapus (reset),
disabled = "disabled"
harus digunakan, karena kotak teks hanya-baca tidak akan mempertahankan nilaiSebagai contoh:
HTML
Kotak teks
Tombol Atur ulang
Dalam contoh di atas, ketika tombol Hapus ditekan, nilai teks yang dinonaktifkan akan dipertahankan dalam formulir. Nilai tidak akan dipertahankan dalam kasus
input type = "text" readonly="readonly"
sumber