我不明白为什么如果我通过jQuery关闭下拉菜单,那么我就可以通过点击按钮重新打开它。
下拉菜单的代码:
<div class="btn-group">
<button type="button" id="BtPeriod" class="btn btn-primary btn-sm brd-rad-0 dropdown-toggle" data-toggle="dropdown">
<i class="fa fa-area-chart"></i><span class="pad-20">15 last days</span><span class="caret"></span>
</button>
<div class="dropdown-menu pull-right pad-20 bor-g-1" style="width:420px;">
<div class="fnt-1-5 pad-b-20 brd-rad-6"><i class="fa fa-area-chart pad-r-20"></i>Timelaps of Lines Charts</div>
<div class="row">
<div class="col-xs-6"><button type="button" id="BtLast15days" class="btn btn-grey brd-rad-0 btn-block">15 last days</button></div>
<div class="col-xs-6"><button type="button" id="BtCurrentMonth" class="btn btn-grey brd-rad-0 btn-block">The current month</button></div>
</div>
</div>
</div>
关闭它的jQuery代码:
$("#BtCurrentMonth").on("click", function(event) {
if(!$("#BtCurrentMonth").hasClass("disabled")) {
if(isMobile.any() == null) parent.NProgress.start() ;
$("#BtPeriod").html("<i class='fa fa-area-chart'></i><span class='pad-20'>The current month</span><i class='fa fa-spinner fa-spin fa-lg'></i>") ;
//$(".dropdown-menu").hide() ;
//$("#BtPeriod").prop("disabled", true) ;
//$(".dropdown-menu").slideUp("fast") ;
$("#IfAccountsChart").attr("src", "http://localhost/dev.sublime-art.com/sublime-admin/pages/adminhome/iframes/if_accounts_charts.php?period=onemonth") ;
}
});
如果我取消注释关闭下拉菜单的这三种方式之一,我发现自己有一个下拉菜单,我无法重新开启。
知道为什么吗? 谢谢:))
修改
$(".btn-group").removeClass("open");
就像一个魅力:)
答案 0 :(得分:0)
Bootstrap正在添加和删除&#34; open&#34;在您的下拉列表中,隐藏/显示功能在css中完成。因此,您的代码隐藏菜单的方式是课程无法显示菜单。
看起来你需要任何代码来关闭它,因为Bootstrap会为你处理,但如果你必须,请尝试:
$(".dropdown-menu").removeClass("open");
这应该可以解决问题。