0

我正在使用 ajax 动态加载表行,当用户单击加载更多按钮时,我有一个名为加载更多的按钮 15 更多事务被添加到 tbody 中。表排序在第一次加载时工作正常但是现在单击加载更多按钮时,我在 tbody 中有 30 个事务,其中我的表排序仅适用于降序。但我希望它同时按升序和降序排序。但再次点击加载更多按钮,一切正常。任何人都可以建议我的代码有什么问题。任何帮助将不胜感激。

<table class="tablesorter list-table" id='AllPaymentTable'> 

</table> 

<script>
var thead = $("<thead/>").appendTo('#AllPaymentTable');
var PaymentHeader= responseData.data.payment_header_object;
$("<tr/>")
  .append("<th class='name'>" +PaymentHeader[i] + "</th>" )
  .appendTo(thead);

var tbody = $("<tbody/>").appendTo('#AllPaymentTable');

var payActivitydetails = responseData.data.payment_data_object;

for (var i = 0; i < payActivitydetails.length; i++) {
  var payDetails = payActivitydetails[i];
  $("<tr class='recentPaymentrow'  id="+payDetails.payment_id +"/>")
  .append("<td class='name'>" + payDetails.customer_name  + "</td>")
  .appendTo(tbody);
  $(".tablesorter").tablesorter();
}

$('#loadmorebtn').bind('click',function(event){
  event.preventDefault();
  event.stopPropagation();
  // ajax call goes here
  //Recents payment populating on screen starts here
  var payActivitydetails = responseData.data.payment_data_object;
  for (var i = 0; i < payActivitydetails.length; i++) {
    var payDetails = payActivitydetails[i];
    $("<tr class='recentPaymentrow'  id="+payDetails.payment_id +"/>")
      .append("<td class='name'>" + payDetails.customer_name  + "</td>")
      .appendTo('tbody')
    $(".tablesorter").tablesorter();
  }
</script>
4

1 回答 1

0

一旦你初始化了 tablesorter,你不应该再次初始化它。相反,使用 update 方法让 tablesorter 识别表中的更改:

$("<tr class='recentPaymentrow'  id="+payDetails.payment_id +"/>")
  .append("<td class='name'>" + payDetails.customer_name  + "</td>")
  .appendTo('tbody')
  .trigger('update'); // update method (bubbles up to table)
于 2013-02-21T15:18:01.003 回答