我需要获取用户从twitter bootstrap下拉列表中选择的值。一旦用户选择了一个值,我希望下拉列表显示该值。因此,用户选择“待定”,然后我想从中更改所选的下拉值,并且当用户完成表单时,我想要检索所选的值。有人能指出我正确的方向吗?
<div class="btn-group">
<i class="dropdown-arrow dropdown-arrow-inverse"></i>
<button class="btn btn-primary">status</button>
<button class="btn btn-primary dropdown-toggle" data-toggle="dropdown">
<span class="caret"></span>
</button>
<ul class="dropdown-menu dropdown-inverse">
<li><a href="#fakelink">pending</a></li>
<li><a href="#fakelink">active</a></li>
<li><a href="#fakelink">discontinued</a></li>
</ul>
</div>
答案 0 :(得分:16)
Bootstrap为您的实现提供了最低限度的所需功能,它们不是下拉菜单,而是仅仅是ul,使用css的li和在bootstrap插件中注册的一些事件,用于切换按钮以将其显示为下拉列表。这是你需要自己做的。
为状态按钮设置一些标识符,例如className btnStatus
,并将click事件绑定到下拉链接。并做这样的事情?
$('.dropdown-inverse li > a').click(function(e){
$('.btnStatus').text(this.innerHTML);
});
<强> Demo 强>
答案 1 :(得分:11)
我有同样的问题。解决方案非常简单,我认为上面的答案可能会过于复杂。
只需使用$(this).text()
将类名分配给“”位然后..
$(".yourUlClassName li a").click( function() {
var yourText = $(this).text();
});
答案 2 :(得分:2)
你可以试试这个:
你可以使用class或id for selector来选择更容易的元素。
使用该值也可以使用jQuery中的{j}的value
。
$().ready(function(){
$('a').click(function(){
var value = $(this).text();
alert(value);
});
});
答案 3 :(得分:0)
试试这个 -
$(document.body).on('click', '.dropdown-menu li a', function (e) {
alert($(this).text());
});
演示 - Fiddle