Apakah ada sesuatu di luar kotak yang didukung bootstrap untuk membuat kotak pilih daftar drop-down defacto "biasa"? Yaitu, di mana kotak drop down adalah daftar nilai dan jika dipilih mengisi isi kotak daftar?
Sesuatu yang mirip dengan fungsi ini?
twitter-bootstrap
genxgeek
sumber
sumber
<select>
. sementara bootstrap memanfaatkan<ul>
drop down, yang pada akhirnya merupakan penggunaan tag yang menyesatkan. diberikan semua kemegahan JQuery di bootstrap, saya bertanya-tanya mengapa mereka tidak mengubah tanda sisipan untuk memilih sendiri. Itu tampaknya solusi yang jauh lebih anggun daripada penyalahgunaanul
.Jawaban:
Bootstrap 3 menggunakan komponen
.form-control
class to style untuk membentuk.http://getbootstrap.com/css/#forms-controls
sumber
bootstrap.js
. Perbedaan visual utama antara ini dan solusi bootstrap 'penuh' (disinggung oleh @ JonathanEdwards) adalah bahwa menu yang muncul berbentuk kotak, kurang cantik, sepertialert
kotak yang disediakan oleh browser Anda. Masalah kecil kok. Pemilih yang tidak diklik terlihat persis seperti Bootstrap.Pilihan lain adalah untuk membuat dropdown Bootstrap berperilaku seperti pilih menggunakan jQuery ...
http://www.bootply.com/b4NKREUPkN
sumber
Jawaban Skelly yang bagus dan mudah sekarang sudah ketinggalan zaman dengan perubahan pada sintaks tarik-turun di Bootstap. Alih-alih gunakan ini:
sumber
Uji: http://jsfiddle.net/brynner/hkwhaqsj/6/
HTML
jQuery
CSS
sumber
Pilihan lain bisa menggunakan pilih bootstrap . Dengan kata-kata mereka sendiri:
sumber
Cara lain tanpa menggunakan .form-control adalah ini:
sumber
Kode Ben mengharuskan div induk memiliki kelas bentuk-grup (saya menggunakan btn-grup), ini adalah versi yang sedikit berbeda yang hanya mencari div terdekat dan bahkan mungkin sedikit lebih cepat.
sumber
Bootstrap3
.form-control
keren tapi bagi mereka yang suka atau butuh drop-down dengan tombol dan opsi ul, di sini adalah kode yang diperbarui. Saya telah mengedit kode oleh Steve untuk memperbaiki lompatan ke tautan hash dan menutup drop-down setelah seleksi.Terima kasih kepada Steve, Ben dan Skelly!
sumber
Saat ini saya sedang berjuang dengan dropdown dan saya ingin berbagi pengalaman saya:
Ada situasi khusus di mana
<select>
tidak dapat digunakan dan harus 'ditiru' dengan dropdown.Misalnya jika Anda ingin membuat grup input bootstrap, seperti Tombol dengan dropdown (lihat http://getbootstrap.com/components/#input-groups-buttons-dropdowns ). Sayangnya
<select>
tidak didukung dalam kelompok input, itu tidak akan diberikan dengan benar.Atau apakah sudah ada yang menyelesaikan ini? Saya akan sangat tertarik dengan solusinya.
Dan untuk membuatnya lebih rumit, Anda tidak dapat menggunakannya hanya
$(this).text()
untuk menangkap apa yang dipilih pengguna dalam dropdown jika Anda menggunakan glypicons atau ikon font yang luar biasa sebagai konten untuk dropdown. Sebagai contoh:<li id="someId"><a href="#0"><i class="fa fa-minus"></i></a></li>
Karena dalam hal ini tidak ada teks dan jika Anda akan menambahkan beberapa maka itu juga akan ditampilkan dalam elemen dropdown dan ini tidak diinginkan.Saya menemukan dua solusi yang mungkin:
1) Gunakan
$(this).html()
untuk mendapatkan konten dari<li>
elemen yang dipilih dan kemudian memeriksanya, tetapi Anda akan mendapatkan sesuatu seperti itu<a href="#0"><i class="fa fa-minus"></i></a>
sehingga Anda perlu bermain dengan ini untuk mengekstrak apa yang Anda butuhkan.2) Gunakan
$(this).text()
dan menyembunyikan teks dalam elemen dalam rentang tersembunyi:<li id="someId"><a href="#0"><i class="fa fa-minus"><span class="hidden">text</span></i></a></li>
. Bagi saya ini adalah solusi sederhana dan elegan, Anda dapat meletakkan teks apa pun yang Anda butuhkan, teks akan disembunyikan, dan Anda tidak perlu melakukan transformasi$(this).html()
hasil seperti pada opsi 1) untuk mendapatkan apa yang Anda butuhkan.Saya harap ini jelas dan dapat membantu seseorang :-)
sumber