Saya menggunakan komponen Dropdown bootstrap di aplikasi saya seperti ini:
<div class="btn-group">
<button class="btn">Please Select From List</button>
<button class="btn dropdown-toggle" data-toggle="dropdown">
<span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu">
<li><a tabindex="-1" href="#">Item I</a></li>
<li><a tabindex="-1" href="#">Item II</a></li>
<li><a tabindex="-1" href="#">Item III</a></li>
<li class="divider"></li>
<li><a tabindex="-1" href="#">Other</a></li>
</ul>
</div>
Saya ingin menampilkan item yang dipilih sebagai label btn. Dengan kata lain, ganti "Silakan Pilih Dari Daftar" dengan item daftar yang telah dipilih ("Item I", "Item II", "Item III").
sumber
Diperbarui untuk Bootstrap 3.3.4:
Ini akan memungkinkan Anda untuk memiliki tampilan teks dan nilai data yang berbeda untuk setiap elemen. Itu juga akan mempertahankan tanda sisipan pada seleksi.
JS:
HTML:
Contoh JS Fiddle
sumber
$(this).text()
.$(this).parents(".dropdown").find('.btn')
dalam variabel daripada memiliki jquery melintasi DOM dua kali.Saya dapat sedikit meningkatkan jawaban Jai untuk bekerja jika Anda memiliki lebih dari satu tombol dropdown dengan presentasi yang cukup bagus yang bekerja dengan bootstrap 3:
Kode untuk Tombol
Cuplikan JQuery
Saya juga menambahkan hak margin 5px ke kelas "seleksi".
sumber
Fungsi jQuery tunggal ini akan melakukan semua yang Anda butuhkan.
sumber
Ini adalah versi saya ini yang saya harap dapat menghemat waktu Anda :)
jQuery PART:
BAGIAN HTML:
sumber
Yang ini berfungsi pada lebih dari satu dropdown di halaman yang sama. Selanjutnya, saya menambahkan tanda sisipan pada item yang dipilih:
sumber
Anda perlu menggunakan add class
open
di<div class="btn-group open">
dan di
li
tambahkanclass="active"
sumber
Lebih lanjut dimodifikasi berdasarkan jawaban dari @Kyle sebagai $ .text () mengembalikan string yang tepat, sehingga tag tanda sisipan dicetak secara harfiah, daripada sebagai markup, untuk berjaga-jaga jika seseorang ingin menjaga tanda sisipan utuh dalam dropdown.
sumber
Saya telah mengoreksi skrip untuk beberapa dropdown pada halaman
sumber
Cara sederhana lain (Bootstrap 4) untuk bekerja dengan beberapa dropdown
sumber
Sepertinya ini masalah panjang. Yang kami inginkan hanyalah menerapkan tag pilih di grup input. Tetapi bootstrap tidak akan melakukannya: https://github.com/twbs/bootstrap/issues/10486
Triknya adalah menambahkan kelas "btn-group" ke div induk
html:
js:
sumber
Setelah Anda mengklik item, tambahkan beberapa atribut data seperti data-selected-item = 'true' dan dapatkan kembali.
Coba tambahkan data-selected-item = 'true' untuk elemen li yang Anda klik, lalu
Sebelum menambahkan atribut ini, Anda cukup menghapus item yang dipilih data yang ada dalam daftar. Semoga ini bisa membantu Anda
Untuk informasi tentang penggunaan atribut data dalam jQuery, lihat data jQuery
sumber
var test = $('ul.dropdown-menu li').data('selected-item').find('a').text(); $("#nbtn").html(test);
tolong beri tahu saya apa yang saya lakukan salah?Saya harus meletakkan beberapa javascripts yang ditampilkan di atas di dalam kode "document.ready". Kalau tidak, mereka tidak bekerja. Mungkin jelas bagi banyak orang, tetapi tidak bagi saya. Jadi jika Anda menguji lihat opsi itu.
sumber
Sebagai contoh:
HTML:
Saya menggunakan BtnCaption elemen baru untuk mengubah teks tombol saja .
Rekatkan ke
$(document).ready(function () {}
teks berikutJavaScript:
:not(.disabled)
jangan izinkan menggunakan item menu yang dinonaktifkansumber