Javascript 如果未检查任何内容,则折叠
我在一个页面上有几个bootstrap4 collapse()。每个复选框都会折叠几个复选框。我的目标是有一个按钮,允许用户关闭所有没有任何复选框的手风琴 我要挑战的是:Javascript 如果未检查任何内容,则折叠,javascript,jquery,twitter-bootstrap,Javascript,Jquery,Twitter Bootstrap,我在一个页面上有几个bootstrap4 collapse()。每个复选框都会折叠几个复选框。我的目标是有一个按钮,允许用户关闭所有没有任何复选框的手风琴 我要挑战的是: //Collapse accordions that have check boxes $('.collapse-only-checked').on('click', function(){ if ($('#accordion .collapse .item').is(':checked')) { $(
//Collapse accordions that have check boxes
$('.collapse-only-checked').on('click', function(){
if ($('#accordion .collapse .item').is(':checked')) {
$('#accordion .collapse').collapse('hide');
event.preventDefault();
}
});
此功能关闭所有手风琴。我希望只关闭有任何输入(复选框)选中的手风琴。其他的手风琴应该开着
//基于按钮单击展开和收缩手风琴
$(文档).ready(函数(){
//全部展开
$('.expand all')。在('click',function()上{
$(#accordion.collapse').collapse('show');
event.preventDefault();
});
//全部崩溃
$('.collapse all')。在('click',function()上{
$(“#accordion.collapse”).collapse('hide');
event.preventDefault();
});
//折叠具有复选框的手风琴
$('.collapse only checked')。在('click',function()上{
if($('#accordion.collapse.item').is(':checked')){
$(“#accordion.collapse”).collapse('hide');
event.preventDefault();
}
});
});代码>
值0
值1
值0
值1
您需要的是:
//Collapse accordions that have check boxes
$('.collapse-only-checked').on('click', function() {
$("#accordion .collapse").each(function () {
if ($(this).find('.item:checked').length > 0)
$(this).collapse('hide');
});
event.preventDefault();
});
简单的解释是:
检查每一个。折叠
检查的计数:选中复选框
如果计数大于0,则表示选中了某些复选框:
- 折叠手风琴。
否则
- 什么也不做
参见如果条件:
//基于按钮单击展开和收缩手风琴
$(文档).ready(函数(){
//全部展开
$('.expand all')。在('click',function()上{
$(#accordion.collapse').collapse('show');
event.preventDefault();
});
//全部崩溃
$('.collapse all')。在('click',function()上{
$(“#accordion.collapse”).collapse('hide');
event.preventDefault();
});
//折叠具有复选框的手风琴
$('.collapse only checked')。在('click',function()上{
$(“#accordion.collapse”)。每个(函数(){
if($(this).find('.item:checked')。长度>0)
$(this.collapse('hide');
});
event.preventDefault();
});
});代码>
值0
值1
值0
值1
您需要的是:
//Collapse accordions that have check boxes
$('.collapse-only-checked').on('click', function() {
$("#accordion .collapse").each(function () {
if ($(this).find('.item:checked').length > 0)
$(this).collapse('hide');
});
event.preventDefault();
});
简单的解释是:
检查每一个。折叠
检查的计数:选中复选框
如果计数大于0,则表示选中了某些复选框:
- 折叠手风琴。
否则
- 什么也不做
参见如果条件:
//基于按钮单击展开和收缩手风琴
$(文档).ready(函数(){
//全部展开
$('.expand all')。在('click',function()上{
$(#accordion.collapse').collapse('show');
event.preventDefault();
});
//全部崩溃
$('.collapse all')。在('click',function()上{
$(“#accordion.collapse”).collapse('hide');
event.preventDefault();
});
//折叠具有复选框的手风琴
$('.collapse only checked')。在('click',function()上{
$(“#accordion.collapse”)。每个(函数(){
if($(this).find('.item:checked')。长度>0)
$(this.collapse('hide');
});
event.preventDefault();
});
});代码>
值0
值1
值0
值1
您不能只使用文档中提到的.collapse('hide')
。例如,如果你想关闭一页上的所有手风琴
$.each($('.panel-collapse'), function() {
$(this).collapse('hide');
});
如果要进一步筛选,请将其添加到jquery中的选择器中。所以你可以用复选框或任何你想要的东西过滤掉那些。下面是一个可运行的示例,您可以单击按钮关闭所有手风琴
$(文档).ready(函数(){
$(“#closeAll”)。单击(函数(事件){
$.each($('.panel collapse'),function(){
$(this.collapse('hide');
});
});
});代码>
关闭所有手风琴
手风琴一号
动物保护协会的陈词滥调,埃尼姆·埃乌斯莫德的高寿命accusamus terry richardson广告鱿鱼。3狼月亮奥特餐厅,非丘比特滑板多洛早午餐。食品车奎奴亚藜。早午餐3狼月亮临时,太阳阿利夸放了一只鸟
在它上面,鱿鱼单一来源咖啡Nalla assumenda shoreditch et.Nihil anim keffiyeh helvetica,工艺啤酒工人wes anderson cred Nescuint sapiente ea proident。纯素食主义者,屠夫副洛莫。从工艺啤酒场到餐桌,
粗斜纹棉布美学合成器Nescuint您可能还没有听说过accusamus labore可持续VHS。
动物保护协会的陈词滥调,埃尼姆·埃乌斯莫德的高寿命accusamus terry richardson广告鱿鱼。3狼月亮奥特餐厅,非丘比特滑板多洛早午餐。食物