有人可以分享一个非常简单的JQuery Ajax版本吗?
答案 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)