【发布时间】:2014-11-28 04:12:58
【问题描述】:
我正在使用一段 Js 代码来显示 Bootstrap 下拉菜单的选定项。我的 ASP.NET 页面上有几个下拉菜单。当我使用此代码并选择第一个(或任何)下拉列表中的一个项目时,所有其他下拉列表也会更改它们的值。我是 Javascript 和 Bootstrap 的新手,已经搜索过类似的问题,但没有找到任何结果...
JS代码(找到here):
$(function(){
$(".dropdown-menu li a").click(function(){
$(".btn:first-child").text($(this).text());
$(".btn:first-child").val($(this).text());
});
});
我已经尝试了上述的一些有趣的变体。包括一个用每个下拉列表的 div 类的名称替换“.btn:first-child”的方法,然后列出所有这些,希望 JS 知道要更改哪些下拉列表……那没用.
使用的标记(我在 row/col-md-6 中使用了几个下拉菜单):
<div class="row">
<div class="col-md-6">
<div class="dropdown">
<button class="btn btn-default dropdown-toggle" type="button" id="ddlForwardTo" data-toggle="dropdown">
Select a Forward To
<span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu1">
<li role="presentation"><a role="menuitem" tabindex="-1" href="#">Action</a></li>
<li role="presentation"><a role="menuitem" tabindex="-1" href="#">Another action</a></li>
<li role="presentation"><a role="menuitem" tabindex="-1" href="#">Something else here</a></li>
</ul>
</div>
</div>
<div class="col-md-6">
<div class="dropdown">
<button class="btn btn-default dropdown-toggle" type="button" id="ddlManufacturing" data-toggle="dropdown">
Select a Manufacturing contact
<span class="caret"></span>
</button>
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu1">
<li role="presentation"><a role="menuitem" tabindex="-1" href="#">Action</a></li>
<li role="presentation"><a role="menuitem" tabindex="-1" href="#">Another action</a></li>
<li role="presentation"><a role="menuitem" tabindex="-1" href="#">Something else here</a></li>
</ul>
</div>
</div>
</div>
任何帮助。
更新:
总结超过 12 小时工作的挫败感 - 如果您遇到此类错误,请务必清除 Google Chrome 中的缓存! Chrome 缓存 Javascript。
Chrome -> 工具 -> 清除浏览数据... -> 选择“缓存的图像和文件”并清除它。
【问题讨论】:
-
你可以尝试从
this(被点击的元素)开始导航DOM。查看closest函数。
标签: javascript asp.net twitter-bootstrap