CFWheels Разбиение на страницы с использованием AJAX

Я облазил весь интернет, весь и не нашел ответа на этот вопрос.

Я использую ColdFusion CFWheels Framework для запросов к базе данных. Запрос выполняется через 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?


person Community    schedule 19.11.2012    source источник


Ответы (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);
    }
  });
person Chris Geirman    schedule 20.11.2012