当JSON数据更改时,jQuery listview刷新

时间:2013-05-27 12:02:34

标签: jquery ajax json

我的数据库中有一些数据。我用PHP和MySQL选择数据并将其放入JSON中。 我将我的其他网站上的JSON加载到我的列表视图中。有用。但我想要的是当JSON数据发生变化时,我的listview应该自动重新加载。

jQuery代码

$(document).ready(function(){    
  var url="url";

    $.getJSON(url,function(json){
      $.each(json.post,function(i,post){
      $("ul:jqmData(role='listview')").append("<li>"+post.naam+"</li>").listview('refresh');
    });
  });
});

我希望有人可以帮助我。

感谢。

1 个答案:

答案 0 :(得分:0)

假设您想要每10秒刷新一次并且您不知道您的服务器是否更改了数据,您应该每10秒提取一次数据,然后清空listview并刷新数据:

var autorefresh = null;
function autoUpdate(){

  if(autorefresh)
       clearTimeout(autorefresh);

    autorefresh=null;
    $.getJSON(url,function(json){
          var $list = $("ul:jqmData(role='listview')");
          $list.empty();
          $.each(json.post,function(i,post){
              $list.append("<li>"+post.naam+"</li>");
        });
          $list.listview('refresh');

          autorefresh=setTimeout(autoUpdate,10000);
    });
}

$(autoUpdate);

如果我在这里没有做错,你可能想要保护getJson。