Jika Anda mengubah dropdown dan menyegarkan halaman, Firefox tampaknya mengabaikan atribut yang dipilih.
<option selected="selected" value="Test">Test</option>
Ini sebenarnya akan memilih opsi yang sebelumnya Anda pilih (sebelum refresh). Ini akhirnya menjadi masalah bagi saya karena ada peristiwa yang dipicu di dropdown yang mengubah hal-hal lain. Adakah cara untuk membuat firefox menghentikan perilaku ini (selain mengaktifkan peristiwa lain saat halaman dimuat)?
firefox
drop-down-menu
refresh
kunci Inggris
sumber
sumber
$('option:selected').each(function(){ $(this).prop('selected',true); });
Jawaban:
AFAIK, perilaku ini di-hardcode ke dalam Firefox.
Anda dapat mencoba mengatur setiap elemen formulir ke
defaultValue
pemuatan halamannya.sumber
$(":input").val(this[0].defaultValue);
(belum teruji); di JS normal, berjalan meskipun masingdocument.getElementsByTagname("select")
Tambahkan
autocomplete="off"
atribut HTML ke setiap tag pilihan. (sumber: https://stackoverflow.com/a/8258154/260080 )Ini memperbaiki perilaku ODD di FireFox.
sumber
Di firefox, saya perhatikan bahwa atribut "dipilih" tidak akan berfungsi kecuali Anda menempatkan pilihan di dalam formulir, di mana formulir tersebut memiliki atribut nama.
sumber
Baru saja mengalami masalah yang sama, percayalah sudah lebih dari 10 jam berjuang dengan perilaku firefox bodoh ini, saya memiliki 7 dropdown, masing-masing akan memicu acara dan mengisi 24 input tersembunyi, jadi Anda dapat membayangkan memiliki opsi yang tepat dipilih dengan 24 nilai masukan yang salah !!! solusi yang akhirnya saya temukan adalah mengatur ulang formulir dengan Javascript menambahkan baris kode ini:
PS: input memiliki nilai yang ditarik dari database, jadi mengatur ulang formulir tidak mengosongkan nilai apa pun tetapi dengan cara memberitahu firefox untuk kembali ke neraka ke opsi yang dipilih = dipilih!
sumber
Firefox hanya mengingat pilihan Anda sebelumnya saat menyegarkan. Sebagai gantinya, coba segarkan ulang.
Juga, masalah yang sama di sini: https://stackoverflow.com/a/1505693/1069232
Lihat juga di sini: https://bugzilla.mozilla.org/show_bug.cgi?id=274795
sumber
Cobalah untuk menonaktifkan
autocomplete
atribut input pilih ... terkadang browser mengabaikanselect
karena itusumber
Saya menggunakan FF 25.0.1
Itu mengabaikan
selected=""
danselected="selected"
.Tapi kalau saya coba
selected
langsung saja opsi yang dipilih.Perilaku aneh (tidak sesuai). Saya tahu
selected
itu HTML5 yang valid dan itu bentuk terpendek, tetapi saya biasanya menulis kode yang juga memvalidasi XML dengan format yang baik, sehingga saya dapat menggunakan alat validasi XML apa pun untuk memeriksa hasil saya dengan cara yang sangat ketat (dan pertukaran data sangat mudah .. .)Menurut W3C, varian ini harus valid pada atribut boolean:
Saya lebih suka yang pertama, karena hampir sesingkat varian terakhir (tidak sesuai xml) tetapi harus divalidasi sebagai XHTML5 DAN HTML5. Jadi saya berharap, Mozilla akan memperbaikinya!
sumber
gunakan .prop () daripada .attr ()
sumber
.prop('selected', true);
atau.prop('selected', false);
(jQuery) untuk mengaktifkan / menonaktifkan berfungsi baik untuk Firefox dan Chrome.Anda dapat memanggil
.reset()
formulir sebelum menyegarkan halaman.sumber
lampirkan pilih dalam atribut formulir dan itu akan bekerja.
dan
sumber
Dengan nama lebih baik = >>
Pilih akan mengambil atribut yang dipilih
sumber
Ini mungkin bug di mozilla tapi coba beri nama dropdown.
sumber
pelengkapan otomatis juga tidak berfungsi untuk saya.
Ini adalah perbaikan javscript yang ditulis di jquery yang saya gunakan:
sumber
Dalam hal ini, ini berfungsi baik untuk Chrome dan Firefox.
Saya menggunakan,
.attr()
bukan.prop()
sumber
Untuk menampilkan item pertama dari dropdown, gunakan
ProjectName.ClearSelection();
Letakkan baris di halaman desain Anda untuk bekerja di semua browser Dan juga letakkan ini di kode di belakang saat halaman dimuat.
sumber
Jika Anda mengubah pilih dan refresh halaman, firefox akan mengembalikan perubahan Anda pada formulir, itulah mengapa Anda merasa pemilihan tidak berfungsi. Daripada menyegarkan, coba buka tautan di tab baru.
sumber
Ini solusi saya:
Saya hanya meletakkannya di bagian atas halaman (dengan kumpulan id yang sesuai), dan itu bekerja untuk saya. Mengganti getElementById dengan loop di atas semua pilihan di halaman, saya tinggalkan sebagai latihan untuk pembaca;).
sumber
Bagi saya tidak ada solusi di atas yang berhasil. Saya harus secara eksplisit mengatur pilihan jika tidak ada yang diatur:
Saya berharap firefox akan memperbaikinya :(
sumber
Di tempat kerja, saya baru saja memperbaiki bug di mana opsi kotak centang ditampilkan dengan benar di Chrome tetapi tidak di Firefox, di halaman web yang sama. Ternyata ada masalah yang sama sekali berbeda dari masalah di atas, tapi mungkin saja masalah yang Anda alami.
Di Chrome, kotak pilih warna font hitam. Untuk beberapa alasan di Firefox, kotak pilih mewarisi warna font dari penampung, yang berwarna putih. Setelah saya menambahkan aturan CSS untuk memaksa kotak pilih warna font menjadi hitam, kumpulan nilai ditampilkan dengan benar.
sumber
Tidak keduanya
autocomplete="off"
atau menempatkannya di dalamform
karya untuk saya.Yang berhasil adalah hanya menggunakan atribut yang dipilih tanpa "nilai" seperti ini:
jadi baik itu membuat
<option selected>...</option>
, atau hanya<option>...</option>
sumber