动态填充jquery mobile listview而不中断数据过滤器

动态填充jquery mobile listview而不中断数据过滤器,jquery,jquery-ui,jquery-mobile,Jquery,Jquery Ui,Jquery Mobile,有很多帖子提到了 $('#ListViewID').listview("refresh") 在动态修改定义为listview的元素的DOM后需要进行的调用。让listview看起来正确没有问题。问题是,我标记了我的listview元素以使用jquery mobile的数据过滤器功能。这适用于静态listview,但不会过滤动态填充的listview内容。我不是为了创建listview而连接字符串——我是在克隆一个原型单元。这就是问题所在吗 这是我的密码 // capture prototyp

有很多帖子提到了

$('#ListViewID').listview("refresh") 
在动态修改定义为listview的元素的DOM后需要进行的调用。让listview看起来正确没有问题。问题是,我标记了我的listview元素以使用jquery mobile的数据过滤器功能。这适用于静态listview,但不会过滤动态填充的listview内容。我不是为了创建listview而连接字符串——我是在克隆一个原型单元。这就是问题所在吗

这是我的密码

// capture prototype
        var prototype = $("#" + currentPage).find(".prototype");
在识别原型之后,我同样锁定“Shell”,它是listview元素:

        var shell = $("#" + currentPage).find(".Rolodex");
        // declare variable for focus cell
        var thisrow;

....

                // map fields
                var pTitle;
                var pSubtitle1;
                var pSubtitle2;
                var pJumper;
                var cellLock;
在这里,我复制原型单元格的次数与输入数据的次数相同

                // build empty rows
                for (i=0; i<len; i++) {
                    thisrow = prototype.clone();
                    thisrow.show();
                    thisrow.addClass('cell');
//生成空行

对于(i=0;i这应该很容易工作

我为您创建了一个示例:

其中有一个小的listview和$.ajax动态地向其添加更多项目。可以通过过滤器搜索新的iTen

您需要检查动态生成的内容是否与规范相同,并且应该如下所示(这是一个示例):


  • 这应该很容易做到

    我为您创建了一个示例:

    其中有一个小的listview和$.ajax动态地向其添加更多项目。可以通过过滤器搜索新的iTen

    您需要检查动态生成的内容是否与规范相同,并且应该如下所示(这是一个示例):


  • 感谢示例代码。我自己也找到了一个类似的解决方案,附加连接项而不是克隆“原型”单元格。连接项允许listview刷新并使其可搜索。
    …var listitem=“
  • 一些东西”
  • ;var lview=$('#listviewid');lview.append(listitem);lview.listview(“refresh”);
    感谢示例代码。我自己也找到了类似的解决方案,附加连接的项而不是克隆“prototype”单元格。连接的项允许listview刷新并使其可搜索。
    …var listitem=“
  • 一些东西
  • ”;var lview=$('#listviewid');lview.append(listitem);lview.listview(“刷新”);
                        thisrow.removeClass('prototype');
                        thisrow.attr("id","cell_"+i);
                        shell.append(thisrow);
                    }
                    shell.listview("refresh");
    
                    for(i=0; i<len; i++) {
                        // map available fields
                        thisrow = shell.find(".cell").eq(i);
                        pTitle = shell.find(".title").eq(i+1);
                        pSubtitle1 = shell.find(".subtitle1").eq(i+1);
                        pSubtitle2 = shell.find(".subtitle2").eq(i+1);
                        pJumper = shell.find(".execBrowse").eq(i+1);
                        // log row info
                        console.log("Row = " + i + " content = " + 
    results.rows.item(i).code_content);
                        // is hyperlink?
                            if (/^http[s]?\:\/\//.test(results.rows.item(i).code_content)) {
                                thisrow.find(".sub-menu").show();
                                pJumper.attr("href",results.rows.item(i).code_content);
    
                                    // yes is a hyperlink
    
    ...                                     
    pTitle.html(results.rows.item(i).code_content);
    ...
    
    <li>
        <a href="#cars">
            <h3>Movie title: Jurasic Park</h3>
            <p>Blah Blah Blah</p>
        </a>
    </li>