如何在使用函数过滤列表后找出 jquery 中列表的长度

how to find out the length of a list in jquery after filtering the list using a function

我正在过滤一个列表,当一个复选框是 clicked.I 想知道列表是否为空,在过滤列表之后我想在列表上设置一个空文本(如果没有 li)说没有找到数据。 单击复选框时的过滤功能:

$('.chk_box').change(function() {
   if ($('input:radio[name=star1]:checked').val()==1) {

     $("#mainpanel").fadeOut(500);
     $("#allapps >li").hide();
     $("#allapps >li[data-rate-filter=1]").show();

   } else if ($('input:radio[name=star1]:checked').val()==2) {
     $("#mainpanel").fadeOut(500);
     $("#allapps >li").hide();
     $("#allapps >li[data-rate-filter=2]").show();
   } 
});

我试过$("#mylistid li").length,但它没有给出过滤后的长度。

如果隐藏筛选项,可以这样统计未隐藏的元素:

$("#mylistid li:visible").length

关于 :visible 选择器的更多解释可以在这里找到:https://api.jquery.com/visible-selector/