Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery展开过滤器上的可折叠列表视图_Javascript_Jquery_Jquery Mobile - Fatal编程技术网

Javascript jQuery展开过滤器上的可折叠列表视图

Javascript jQuery展开过滤器上的可折叠列表视图,javascript,jquery,jquery-mobile,Javascript,Jquery,Jquery Mobile,我有几个折叠的列表视图。这些可以通过输入字段进行过滤。目前,它们都已折叠,需要在过滤后单独打开。我想自动打开它们。我的问题与此非常相似,但具体来说,我过滤的是一个可折叠的listview小部件,而不是一个可折叠的小部件。任何帮助都将不胜感激 html: 我会检查筛选后是否有任何listview项可见,然后根据该项展开/折叠: $(".filterMe").on("filterablefilter", function (event, ui) { var anyVisible = fals

我有几个折叠的列表视图。这些可以通过输入字段进行过滤。目前,它们都已折叠,需要在过滤后单独打开。我想自动打开它们。我的问题与此非常相似,但具体来说,我过滤的是一个可折叠的listview小部件,而不是一个可折叠的小部件。任何帮助都将不胜感激

html:


我会检查筛选后是否有任何listview项可见,然后根据该项展开/折叠:

$(".filterMe").on("filterablefilter", function (event, ui) {
    var anyVisible = false;
    ui.items.each(function( index ) {
        if (!$(this).hasClass("ui-screen-hidden")){
            anyVisible = true;
        }
    });
    $(this).collapsible("option", "collapsed", !anyVisible);
});

谢谢ezanker,但这对我不起作用。我甚至尝试将其更改为
$(“.filterMe”)。在(“filterablefilter”,function(event,ui){alert(“triggered”);}但这不起作用,所以我不确定为什么它甚至没有被触发。为了完成这张图片,我正在筛选的列表是通过ajax调用引入的(但这会有什么不同吗??)。正如您所看到的,有两个可折叠集(虽然可能有更多),它们都是由外部输入字段同时过滤的-也许这会影响一些事情?你觉得怎么样?@Brad,在ajax调用之后,你也应该调用filterable(“刷新”),filterablefilter处理程序应该在pagecreate中定义。谢谢@ezanker。不幸的是,我尝试了这两种方法,但都没有成功。我向我的ajax调用程序(位于documentReady中)添加了以下代码:
$('#family').change(function(){myFamily=$(this.val();$(“#ajaxDiv”).load(“functions.php”,“changeFamilyGroup”:“true”,“family”:myFamily},function(){$(this.enhanceWithin(););$(.filterMe”).filterable(“刷新”)$(.filterMe”)。在(“页面创建”,函数(事件){$(this)。在(“filterablefilter”,函数(事件,用户界面){alert(“triggered”);})仅在标记内,但没有运气!(另外,#family selector没有显示在我的初始帖子中,它只是一个选择框,在我的原始问题中加载相应的ul列表)它不是$(“.filterMe”).on(“pagecreate”,而是$(document).on(“pagecreate”,“#yourpageid”,function(){…请看我的codepen演示。您也可以尝试将AJAX调用放在pagecreate中,而不是放在document ready中。
$(document).on("pageshow", "#usagePicker", function () {
    $(".filterMe").on("filterablefilter", function (event, ui) {
        $(".ui-collapsible:not(.ui-screen-hidden)").collapsible("option", "collapsed", false);
    });
});
$(".filterMe").on("filterablefilter", function (event, ui) {
    var anyVisible = false;
    ui.items.each(function( index ) {
        if (!$(this).hasClass("ui-screen-hidden")){
            anyVisible = true;
        }
    });
    $(this).collapsible("option", "collapsed", !anyVisible);
});