刷新Listview问题

时间:2011-08-09 13:00:49

标签: ajax listview jquery-mobile refresh

刷新listview时遇到问题。

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

<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,当我回到第一页时,listview是空的......

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

我听说过jQuery Mobile Beta 2的“创建”触发器,但我可能不明白这意味着什么......

任何解决方案?

1 个答案:

答案 0 :(得分:0)

您需要在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"); 
});