jquery - 使 Bootstrap 下拉按钮级联

标签 jquery html ajax twitter-bootstrap

我在我的网页上添加了两个下拉框,如下所示,但我想让它们级联,然后将下拉按钮的值传递给一个函数。

<div class="btn-group">
   <button data-toggle="dropdown" class="btn btn-success dropdown-toggle">Success <span class="caret"></span></button>
      <ul class="dropdown-menu">
         <li><a href="#" onClick="return false;">Action</a></li>
         <li><a href="#" onClick="return false;">Another action</a></li>
         <li><a href="#" onClick="return false;">Something else here</a></li>
         <li class="divider"></li>
         <li><a href="#" onClick="return false;">Separated link</a></li>
      </ul>
</div><!-- /btn-group -->
<div class="btn-group">
   <button data-toggle="dropdown" class="btn btn-info dropdown-toggle">Info <span class="caret"></span></button>
      <ul class="dropdown-menu">
         <li><a href="#" onClick="return false;">Action</a></li>
         <li><a href="#" onClick="return false;">Another action</a></li>
         <li><a href="#" onClick="return false;">Something else here</a></li>
         <li class="divider"></li>
         <li><a href="#" onClick="return false;">Separated link</a></li>
      </ul>
</div><!-- /btn-group -->

最佳答案

正如 KyleT 在评论中提到的,您可以使用枚举代替数组来完成。然而,作为一个舒适的选择,我将使用一个数组。 <强> Fiddle

var states = [
    "Kansas",
    "Oklahoma",
    "Texas"    
];

$('.dropdown-menu > li > a').click(function() {
    yourFunction(this.text);
});

function yourFunction(val) {
        
    if ( val === "Action" ) {
        $('#states').html('');
        for ( var i in states ) {
            $('#states').append("<li><a href='#'>" + states[i] + "</a></li>");
        }
    }
    
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.2/js/bootstrap.min.js"></script>
<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.2/css/bootstrap.min.css" rel="stylesheet"/>
<div class="btn-group">
  <button data-toggle="dropdown" class="btn btn-success dropdown-toggle">Success <span class="caret"></span>
  </button>
  <ul class="dropdown-menu">
    <li><a href="#">Action</a>
    </li>
    <li><a href="#">Another action</a>
    </li>
    <li><a href="#">Something else here</a>
    </li>
    <li class="divider"></li>
    <li><a href="#">Separated link</a>
    </li>
  </ul>
</div>
<!-- /btn-group -->
<div class="btn-group">
  <button data-toggle="dropdown" class="btn btn-info dropdown-toggle">Info <span class="caret"></span>
  </button>
  <ul class="dropdown-menu" id="states">
    <li><a href="#">Action</a>
    </li>
    <li><a href="#">Another action</a>
    </li>
    <li><a href="#">Something else here</a>
    </li>
    <li class="divider"></li>
    <li><a href="#">Separated link</a>
    </li>
  </ul>
</div>
<!-- /btn-group -->

关于jquery - 使 Bootstrap 下拉按钮级联,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28368145/

相关文章:

php - "Add to favorites"使用 mysqli_fetch_assoc 数据库表检索项目的功能

jquery - 在 jQuery 中检查 AJAX 请求是否成功的最佳方法

javascript - ChildNodes/NodeValue 混淆

暂停脚本执行的 jQuery 确认框

PHP 表单发布空白值

html - 如何将关闭按钮添加到 Bootstrap 卡?

javascript - 从 Farbtastic 获取十六进制值并转换为 RGB 以在 php 中的 imagefilter 中使用

javascript - jQuery - 鼠标输入闪烁图像

javascript - 如何在 .scroll jQuery 函数中将 'px' 替换为 '%'

javascript - backbone.js 中的多个点击事件