如何处理JQuery和AJAX的分页?

时间:2011-03-21 00:41:22

标签: php javascript jquery ajax get

在我的网站上,我有FirstPrevNextLast链接。这些是由JQuery捕获和处理的空链接。但是,对于AJAX和JQuery来说仍然是一个新手,我不知道如何实现我想要的。我相信我可以使用post来解决这个问题,但唯一的问题是我希望目标页码以这种格式进入网址:

http://www.mywebsite.com/index.php?page=3

然后在页面加载时我会使用$ _GET变量和页码,我可以从数据库中请求相应的表并将它们显示给用户。

基本上我要问的是如何使用JQuery模拟this行为。

2 个答案:

答案 0 :(得分:1)

您可以这样做:

使用Javascript:

function pagination(page) {
    if (!page)
        var page = 1;

    $.post("index.php", { page: page }, function(data) {
        // data loaded, do something
   });
}

然后,你只需要调用javascript函数:

<a href="javascript:pagination(1);">Prev</a> <a href="javascript:pagination(2);">Next</a>

答案 1 :(得分:0)

只要您从与脚本相同的站点请求此操作,您就可以逃脱此操作。

要加载远程内容(Google Cross Site Scripting 以获取限制),jQuery有一个简单的功能:

$('#result').load('ajax/test.html');

这会将test.html加载到ID为#ajax的项目中。很简单。

为了获得参数,您可以使用此脚本(信用转到http://jquery-howto.blogspot.com/2009/09/get-url-parameters-values-with-jquery.html):

function getUrlVars()
{
    var vars = [], hash;
    var hashes = window.location.href.slice(window.location.href.indexOf('?') + 1).split('&');
    for(var i = 0; i < hashes.length; i++)
    {
        hash = hashes[i].split('=');
        vars.push(hash[0]);
        vars[hash[0]] = hash[1];
    }
    return vars;
}

使用信息也可以在那里使用。