Javascript 隐藏。当儿童有“时,卡体”;显示:无“;

Javascript 隐藏。当儿童有“时,卡体”;显示:无“;,javascript,jquery,html,bootstrap-4,Javascript,Jquery,Html,Bootstrap 4,我有两张折叠卡片 当用户单击分页中的字母时,我希望.card body适应显示:如果卡中没有显示divs,则无。否则,卡头下方总是有一些空白 .card body是$('#Categories>.acc row') 现在我只能隐藏所有的牌体,没有一个,或者只隐藏第一个。 下面是我全部代码的一个片段。这里有一个 下面是我在过去几个小时里一直在做的事情的片段(没有一个片段工作正常) 另一个 if ($('#Categories > .acc-row').is(":visible")) {

我有两张折叠卡片

当用户
单击分页中的字母时,我希望
.card body
适应
显示:如果卡中没有显示
divs
,则无
。否则,
卡头下方总是有一些空白

.card body
$('#Categories>.acc row')

现在我只能隐藏所有的牌体,没有一个,或者只隐藏第一个。 下面是我全部代码的一个片段。这里有一个

下面是我在过去几个小时里一直在做的事情的片段(没有一个片段工作正常)

另一个

if ($('#Categories > .acc-row').is(":visible")) {
           $('#Categories > .acc-row').parent().show();
            }else{
           $('#Categories > .acc-row').parent().hide();
           }
还有一个

 $('#Categories > .acc-row').each(function(){
     if ($(this).is(":visible")) {
        $(this).parent().show();
         }else{
        $(this).parent().hide();
        } 
      });
这是我的最新方法

   if ($('#Categories > .acc-row:hidden')) {
             $('#Categories > .acc-row').parent().show();
           }else{
             $('#Categories > .acc-row').parent().hide();
           }
$(文档).ready(函数(){
$(“#alpf.acco”)。每个(函数(){
$(此)。在(“单击”,函数()上){
$('.collapse')。collapse(“show”);
var cat=$(this).data('cat-type');
var nam=$(this).data('cat-name');
如果(cat!=0){
$('#Categories>.acc row').hide();
//$('#Categories>.acc行:hidden').parent().hide();
$(“#Categories>.acc行[data cat type=“”+cat+”]”][data cat name=“”+nam+”]”)。show();
}
//var toHide=$('div.acc-row');
//if(toHide.filter(':visible')。长度==0){
//$('.collapse')。折叠(“隐藏”);
//  }
//如果($('#Categories>.acc row')。为(“:可见”)){
//$('#Categories>.acc row').parent().show();
//}其他{
//$('#Categories>.acc row').parent().hide();
// }
//$('#Categories>.acc row')。每个(函数(){
//如果($(this).is(“:可见”)){
//$(this.parent().show();
//}其他{
//$(this.parent().hide();
//       }
//
// });
如果($('#Categories>.acc行:隐藏')){
$('#Categories>.acc row').parent().show();
}否则{
$('#Categories>.acc row').parent().hide();
}
});
});
$(“#搜索”)。关于(“键控”,函数(e){
//$('button').removeClass('collapsed');
$('collapseOne,'collapseTwo')。removeClass('collapseOne');
var value=$(this.val().toLowerCase();
$('.acc行').filter(函数(){
$(this).toggle($(this).text().toLowerCase().indexOf(value)>-1)
});
});
});

手风琴滤波器
搜索: 第一部门 阿斯顿

跟踪器

aston@some.com

电话:1234567890

阿琳

专家

arleen@firm.is

电话:1239484999

约翰

登记册

jj@arn.com

1234565469

凯尔

司机

kdrive@company.com

1234567890

第二部门 艾伦

专家

allan@lsome.com

电话:1234567890

IT人员

brad@some.com

1234567890

布伦特

专家

brent@some.com

123456789

埃文

厨师

evan@some.com

123456789


您可以迭代每个卡体,以控制每一行是否可见。因此,如果没有可见的div,则可以隐藏卡体

整个代码:

$(document).ready(function() {
  $("#alphf .acco").each(function() {

    $(this).on("click", function() {
      $('.collapse').collapse("show");

      var cat = $(this).data('cat-type');
      var nam = $(this).data('cat-name');

      // modified from here down
      if (cat != 0) {
        $('.card-body').each(function(i, cardBody) {
          var hidebody = true;
          ($(cardBody.children)).each(function(f, accRow) {
            $(accRow).hide();
            if ($(accRow).data('catType') == cat && $(accRow).data('catName') == nam) {
              hidebody = false;
              $(accRow).show();
            }
          });
          if (hidebody) {
            $(cardBody).hide();
          } else {
            $(cardBody).show();
          }
        });
      }
      // modified from here up

    });

  });

  $("#search").on("keyup", function(e) {
    $('#collapseOne, #collapseTwo').removeClass('collapse');
    var value = $(this).val().toLowerCase();
    $('.acc-row').filter(function() {
      $(this).toggle($(this).text().toLowerCase().indexOf(value) > -1)
    });
  });

});
此外,同一页上不能有多个相同的id属性。因此,我建议您删除或修改id
#Categories

$(document).ready(function() {
  $("#alphf .acco").each(function() {

    $(this).on("click", function() {
      $('.collapse').collapse("show");

      var cat = $(this).data('cat-type');
      var nam = $(this).data('cat-name');

      // modified from here down
      if (cat != 0) {
        $('.card-body').each(function(i, cardBody) {
          var hidebody = true;
          ($(cardBody.children)).each(function(f, accRow) {
            $(accRow).hide();
            if ($(accRow).data('catType') == cat && $(accRow).data('catName') == nam) {
              hidebody = false;
              $(accRow).show();
            }
          });
          if (hidebody) {
            $(cardBody).hide();
          } else {
            $(cardBody).show();
          }
        });
      }
      // modified from here up

    });

  });

  $("#search").on("keyup", function(e) {
    $('#collapseOne, #collapseTwo').removeClass('collapse');
    var value = $(this).val().toLowerCase();
    $('.acc-row').filter(function() {
      $(this).toggle($(this).text().toLowerCase().indexOf(value) > -1)
    });
  });

});