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)
});
});
});