jqPagination为ajax过滤产品

时间:2017-01-10 11:30:39

标签: jquery ajax jqpagination

我正在尝试使用jqPagination对可以使用ajax过滤的产品进行分页。一切正常,直到这个:假设我有20个产品,每页5个产品,意思是4页。 现在,我的问题出现了,如果我过滤产品并获得(即)2页,当我应用过滤器时,我在第4页。 jqPagination输入显示第4页(共4页)(如果我在应用ajax过滤器时在第1页或第2页上工作正常)。 这是我使用的jquery代码:

$(document).ready(function() {
  var records_per_page = 5;
  var records = $('#products div.productItem').length;
  var pages = Math.ceil(records/records_per_page);

  $('#products div.productItem').slice(records_per_page).hide();

  $('.pagination').jqPagination({
    max_page    : pages,
    page_string : '{current_page} of {max_page}',
    paged       : function(page) {

      var start_rec = records_per_page * (page-1);
      var stop_rec = start_rec+records_per_page;

      $('#products div.productItem').hide();
      $('#products div.productItem').slice(start_rec,stop_rec).show();
    }
  });
});
$.ajax({
        url: "modules/modules/_ajax-filters.php",
        data: { marke: selBrandStr, lieferung: selDeliveryStr, minPrice: minPriceFilter, maxPrice: maxPriceFilter, pag: pag },
        type:"post",
        async: false,
        cache: false,
        dataType: "html",
        success: function (html) {
            $('#products').html('');
            $('#products').html(html);

            var records_per_page = 5;
            var records = $('#products div.productItem').length;
            var pages = Math.ceil(records/records_per_page);

            $('.pagination').jqPagination('option', 'max_page', pages);
            $('.pagination').jqPagination('option', 'current_page', 1);
        }
});

1 个答案:

答案 0 :(得分:0)

我发现自己的答案...... 我不得不在他们之间换行

$('.pagination').jqPagination('option', 'max_page', pages);
$('.pagination').jqPagination('option', 'current_page', 1);

并成为:

$('.pagination').jqPagination('option', 'current_page', 1);
$('.pagination').jqPagination('option', 'max_page', pages);

现在有效。