如何使用Jquery从多个页面加载相同的div

时间:2013-07-12 20:22:03

标签: javascript jquery

我正在尝试整理一个脚本,该脚本将添加到load的概念,并以一种可以调用多个页面的方式向外扩展,以搜索div的实例。

例如,请考虑以下代码:

<div class="loadStuffHere">
</div>

$('.loadStuffHere').load('/wiki.htm .posts');

所以,上面的代码工作正常,但我不知道如何让它一次搜索多个页面。

在这种情况下我需要搜索的第二页是:/wiki.htm?b = 1&amp; pageindex = 2。脚本搜索第一页后,则需要搜索第二页。搜索完第二页后,脚本需要先自动递增数字2,然后将其更改为3,然后搜索该页面,然后继续执行此操作,直到找到不存在的页面为止,然后返回false并结束它的执行。所以搜索和加载过程包括:

/wiki.htm
/wiki.htm?b=1&pageindex=2
/wiki.htm?b=1&pageindex=3
/wiki.htm?b=1&pageindex=4
/wiki.htm?b=1&pageindex=5
/wiki.htm?b=1&pageindex=6

它将继续在那个庄园中,直到它击中一个尚不存在的页面,因为这是一个分页系统。

这是否可以做到,如果是这样,它会是什么样子? 非常感谢任何帮助!

P.S。如果您认为我可能尝试使用某些服务器端编码更容易实现的东西,那么您是对的。但遗憾的是,我无法访问它。

2 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

function loadWikiPosts(page_index) {
    if (page_index != null) { url += '?b=1&pageIndex='+page_index; }
    else { page_index = 1; /* for next time if this one fails */ }

    url += ' .posts'; // to grab just the posts

    // Send the AJAX request
    $('.loadStuffHere').load(url, function(response, status, request) {
        if (status == "error") { console.log(response); throw "Load returned an error"; }
        if ($('.loadStuffHere').find('.posts').length == 0) {
            page_index++;
            loadWikiPosts(page_index);
        }
    });
}

try {
    loadWikiPosts();
} catch (exception) {
    // do something w/the exception message
}

答案 1 :(得分:1)

使用以下代码创建包含所有结果的数组:

的JavaScript / jQuery的

var linkArray=["/wiki.htm",
  "/wiki.htm?b=1&pageindex=2",
  "/wiki.htm?b=1&pageindex=3",
  "/wiki.htm?b=1&pageindex=4",
  "/wiki.htm?b=1&pageindex=5",
  "/wiki.htm?b=1&pageindex=6"];


for (var i in linkArray)
{
    var content = "";
    $('.loadStuffHere').append($(content).load(linkArray[i]+' .posts'));
}

上面的代码未经过测试。