我已经看过类似的其他问题并尝试了许多解决方案,但没有一个有效。这是问题,这是顶部横幅的迷你登录表单。单击字段时,我需要按钮不自动关闭。这是我的代码:
<script>
$(document).on('click', '.dropdown-menu', function(e){
$(this).hasClass('keep_open') && e.stopPropagation(); // This replace if conditional.
});
</script>
<div class="btn-group" >
<a class="btn btn-small btn-inverse dropdown-toggle" data-toggle="dropdown" href="#">
<i class="cus-key"></i> Login
<span class="caret"></span>
</a>
<ul class="dropdown-menu pull-right keep_open">
<form action="clog.php" method="post" class="keep_open">
<!-- dropdown menu links -->
<li><input type="text" placeholder="Username..." class="keep_open" /></li>
<li><input type="text" placeholder="Password..." class="keep_open"/></li>
<li><input type="submit" name="submit" style="background-image: url('img/login.png'); width: 110px; height: 32px; cursor: hand; margin-top: -5px" value=" " /></li>
<li><a href="/riders/register.php" ><span style="color: green; float: right" > Sign up for account<i class="icon-double-angle-right"></i></a></span></li>
</form>
</ul>
</div>
答案 0 :(得分:18)
我明白了。它不在文档就绪功能中。 (帽子提示Koala_dev) Javascript必须是:
<script type="text/javascript">
$(document).ready(function() {
$(document).on('click', '.dropdown-menu', function (e) {
$(this).hasClass('keep_open') && e.stopPropagation(); // This replace if conditional.
});
});
</script>
答案 1 :(得分:3)
我在手风琴/切换子菜单中遇到了同样的问题,该子菜单嵌套在Bootstrap 3的下拉菜单中。从source code借用此语法以停止关闭下拉列表中的所有折叠切换:< / p>
$(document).on(
'click.bs.dropdown.data-api',
'[data-toggle="collapse"]',
function (e) { e.stopPropagation() }
);
您可以将[data-toggle="collapse"]
替换为您要停止关闭表单的内容,例如另一个类或另一个数据属性。