无法通过单击重新打开下拉列表
我有一个由angularjs
和bootstrap
制作的网页,但不是ui-bootstrap
。
有一个drop-down list
和一个iframe
。 问题是当下拉列表打开时,单击iframe不会自动关闭下拉列表。
我按照这个答案添加了以下内容:
$(window).on('blur',function() { $('.dropdown-toggle').parent().removeClass('open'); } );
现在,单击iframe会关闭下拉列表。 但是,在关闭之后,单击下拉按钮将不会重新打开列表; 我们必须单击iframe以外的其他位置或单击下拉按钮一次,然后再次单击下拉按钮打开列表。
很抱歉,我无法在游乐场重现问题,但似乎是“只有第二次点击才能打开下拉列表”这一常见问题。 我试图删除data-toggle="dropdown"
,但它没有帮助。
有谁知道我可以尝试解决这个问题?
你可以试试更多的“bootstrap”解决方案
$(window).on('blur',function() { if($('.dropdown-toggle').parent().hasClass('open')){ $(".dropdown-toggle").dropdown("toggle"); } });
这将关闭元素,如果打开,让下拉列表关闭,以便下一次点击触发打开。
我终于明白了……
之前,我使用了以下内容,并没有使用bootstrap.js
.
为了避免这个问题中提到的问题,我需要使用:
请注意,绝对需要bootstrap.js
,对于ui-bootstrap-tpls.js
0.11.0
是不够的。
(*顺便说一下,我之前有过一个错误(遗憾的是我记得不清楚),这是因为版本不够高ui-bootstrap-tpls.js
。真的需要记住ui-bootstrap-tpls.js
当遇到棘手的js bug时, ui-bootstrap-tpls.js
可能是问题。*)