【问题标题】:Refresh Listview issue刷新列表视图问题
【发布时间】:2011-10-23 05:14:03
【问题描述】:

我在刷新列表视图时遇到问题。

我在同一个 html 文件中有 2 个页面。 在这两个页面中,我都有一个使用 Ajax 动态生成的列表视图:

<ul data-role="listview" data-filter="true" id="nestedList">
</ul>

另外一个:

<ul data-role="listview" data-filter="true" id="secondList">
</ul>

加载数据后,我正在这样做:

$('#nestedList').html(dynamicNestedList);
$('#secondList').html(dynamicSecondList);
$('ul#nestedList').listview("refresh"); 

对于第一页,一切正常。 对于第二页,我添加了一个简单的脚本,可以即时刷新:

<script>
 $('ul#secondList').listview("refresh");
</script>

使用 jQueryMobile Beta1,我可以回到第一页,一切都还好。 使用 jQueryMobile Beta2,当我返回第一页时,列表视图为空...

我尝试添加相同的“脚本”来动态刷新第一页。这是行不通的。当我回到第一页时,“正在加载”的 jQuery 消息正在发生并且永远不会离开..

我听说过 jQuery Mobile Beta 2 的“创建”触发器,但我可能不明白它的真正含义......

有什么办法吗?

【问题讨论】:

    标签: ajax listview jquery-mobile refresh


    【解决方案1】:

    你需要在 live() 中执行这个

    例子:

    $('#secondList_page_id').live('pageshow',function(event, ui) {
        $('#secondList').html(dynamicSecondList);
        $('ul#secondList').listview("refresh");
    });
    
    $('#nestedList_page_id').live('pageshow',function(event, ui) {
        $('#nestedList').html(dynamicNestedList);
        $('ul#nestedList').listview("refresh"); 
    });
    

    【讨论】:

    • 当我切换到另一个页面时,nestedList 的内容似乎消失了。而当我回来的时候,即使我做了一个listview“刷新”,内容也不再在这里了......这很奇怪,因为这并不影响第二个列表......
    • 它有效.. 不如 beta1 但效果很好。仍然奇怪的是,第二个列表不需要该代码,内容一旦放入就保留在列表中...而第一个列表在更改页面时总是丢失其内容...
    • 为了更好地调试,您需要添加您使用动态嵌套列表的方式
    猜你喜欢
    • 2011-08-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-31
    • 2011-03-18
    • 2011-05-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多