有人可以分享一个非常简单的JQuery Ajax版本吗?

时间:2010-04-13 22:17:43

标签: jquery pagination

有人可以分享一个非常简单的JQuery Ajax版本吗?

2 个答案:

答案 0 :(得分:2)

我建议使用服务器来处理分页,因为它应该根据收到的pageNo参数响应正确的输出:

$(document).ready(function() {
    $("a").click(function() {
        $("#results").load( "foo.php", { pageNo: $(this).text()}, sortBy: $("#sortBy").val() );
        return false;
    });
});

<select id="sortBy">
    <option value="date">Added</option>
    <option value="price">Price</option>
</select>

<div id="results"></div>

<a href="foo.php?p=1">1</a>
<a href="foo.php?p=2">2</a>

注意:当一个对象作为第二个参数传递给$.load时,将发出一个POST请求。见http://api.jquery.com/load/

编辑:与上面相同,但是从服务器获取JSON:

$(document).ready(function() {
    $("a").click(function() {
        $.getJSON( "foo.php", { pageNo: $(this).text(), sortBy: $("#sortBy").val() }, function(json) {
            // read json here, possibly using $.each
        });
        return false;
    });
});

编辑(再次):我建议使用服务器在初始内容中进行渲染。如果您坚持使用ajax请求第一页结果,一种方法是模拟点击第1页的链接:

$("a:first").click();

更好的是,为了消除任何混淆,你可以给你的分页链接一个类.pageNo,以消除任何混淆:

$("a.pageNo:first").click();

答案 1 :(得分:0)