我搜索了整个互联网,所有这些都找不到答案。
我正在使用ColdFusion CFWheels框架来查询数据库。查询是通过AJAX完成的,如下所示:
var id = $("#ship-id").val();
$.ajax({
type: "POST",
url: "/my-controller/my-method?format=json",
data: {shipId: id},
dataType: "json",
success: function(response) {
var resultHtml = '';
$.each(response, function(i, value) {
resultHtml += '<tr><td>' + value.FIRSTNAME + ' ' + value.LASTNAME + '</td></tr>';
});
$("#my-table").html(resultHtml);
}
});
我需要对结果集进行分页。在CFWheels中,您通常通过在查询中设置句柄,页面,perPage和订单值来执行此操作,如下所示:
var order = model("order").findAll(
select="id, firstname, lastname, email",
where="orderid IN (#ValueList(orders.id)#)",
handle="ordersQuery",
page=params.page,
perPage=5,
order="lastname"
);
然后你只需将这一行放在你的视图中:
<cfoutput>#paginationLinks(handle="ordersQuery")#</cfoutput>
但是......你怎么能用AJAX调用分页?
答案 0 :(得分:1)
我认为这些内容可能是您的答案(请注意我删除了url
并将这些参数添加到data
...
$.ajax({
type: "POST",
data: {
shipId: id,
controller: myController,
action: myAction,
page: params.page,
},
dataType: "json",
success: function(response) {
var resultHtml = '';
$.each(response, function(i, value) {
resultHtml += '<tr><td>' + value.FIRSTNAME + ' ' + value.LASTNAME + '</td></tr>';
});
$("#my-table").html(resultHtml);
}
});