我想在单击不同按钮时分别展开和折叠具有相同 id 的 div 元素。
这是我的 HTML 代码
<body>
<button id="button" type="button" class="btn btn-primary btn-block hidden-md hidden-sm hidden-lg" data-toggle="collapse" data-target="#dem">
<span class="glyphicon glyphicon-collapse-down"></span> Show Status
</button>
<div class="collapse" id="dem">
<p>This is first</p>
</div>
<button id="button" type="button" class="btn btn-primary btn-block hidden-md hidden-sm hidden-lg" data-toggle="collapse" data-target="#dem">
<span class="glyphicon glyphicon-collapse-down"></span> Show Status
</button>
<div class="collapse" id="dem">
<p>This is Second</p>
</div>
<button id="button" type="button" class="btn btn-primary btn-block hidden-md hidden-sm hidden-lg" data-toggle="collapse" data-target="#dem">
<span class="glyphicon glyphicon-collapse-down"></span> Show Status
</button>
<div class="collapse" id="dem">
<p>This is Third</p>
</div>
</body>
这是我的脚本
$(function(){
$('#dem').on('show.bs.collapse', function () {
$('#button').html('<span class="glyphicon glyphicon-collapse-up"></span> Hide Status');
})
$('#dem').on('hide.bs.collapse', function () {
$('#button').html('<span class="glyphicon glyphicon-collapse-down"></span> Show Status');
})
})
当我点击第一个按钮时,它会展开,当我点击第二个或第三个按钮时,第一个按钮的内容会折叠。其他按钮的内容不会展开。我知道我缺少一些脚本代码,但我不知道是什么代码是。
最佳答案
ID 应始终是不同的。
将这些更改为类...因为您使用的是 jQuery,所以您可以在点击事件中执行类似的操作...
$(".className").hide()
$(".className").show()
$(".className").toggle()
假设他们有不同的 ID,变化就像是......
$("#button1").on('click', function() {
if ($(this).is(":visible")) {
$(".className").hide()
} else {
$(".className").show()
}
});
关于javascript - Bootstrap div 折叠和展开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27299210/