jquery:自动重新加载/更新页面元素?

时间:2011-02-17 22:33:54

标签: jquery ajax reload

嘿伙计们, 我想每分钟升级一个特定的页面元素。

我知道如何使用jquery load()函数重新加载我的页面上的元素。

    $('.mostliked').load("http://mypage.com" + " .mostliked >*", function() {
        //callback
    });

这很好,因为.mostliked是我的侧边栏中的一个元素。

但是现在我需要更新一个我无法从其他页面获取内容的元素,如我的侧边栏示例所示。

var reload = 60000;     setInterval(function(){

    $('ul.rating').each(function() {
        //simply reload this element every minute
    })
    //update sidebar widget
    $('.mostliked').load("http://mypage.com" + " .mostliked >*", function() {
        //callback
    });

}, reload);

我该如何解决这个问题?

谢谢

2 个答案:

答案 0 :(得分:2)

$(document).ready(function() {
                setInterval(function() {
    $(".mostliked").load("http://mypage.com" + " .mostliked","");
}, 60000);
});

答案 1 :(得分:1)

在此页面上的“正在加载页面片段”标题下进行检查:http://api.jquery.com/load/

为了“重新加载”ul.rating元素,您需要在后台获取当前页面(使用load或其他方法),并捕获其ul.rating元素并将其替换为javascript正在运行的页面。

注意:这不是最好的方法,如果你可以让一些服务器大小代码只返回ul.rating元素所需的内容,而不是发出整个页面请求,那就更好了。解析出你需要的部分。