Twitter Bootstrap:如何获得所选的下拉值?

时间:2013-11-01 21:54:34

标签: jquery css twitter-bootstrap

我需要获取用户从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>

4 个答案:

答案 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);
        });
    });

演示http://jsfiddle.net/mr_mohsen_rasouli/A8m39/

答案 3 :(得分:0)

试试这个 -

$(document.body).on('click', '.dropdown-menu li a', function (e) {
    alert($(this).text());
});

演示 - Fiddle