Javascript 通过从ajax加载可手持排序数据

Javascript 通过从ajax加载可手持排序数据,javascript,php,jquery,ajax,handsontable,Javascript,Php,Jquery,Ajax,Handsontable,我尝试使用Handsontable插件,并希望使用ajax对表中的数据进行排序 当我使用columnSorting:true时,视图上只有排序,我更新它时,索引行出错 有人知道如何对php中的数据进行排序,然后在表上显示排序后的数据结果吗 $container.handsontable({ colHeaders: header(),//["Title", "Description", "Comments"], data : data(), //startRows: 3, col

我尝试使用Handsontable插件,并希望使用ajax对表中的数据进行排序

当我使用columnSorting:true时,视图上只有排序,我更新它时,索引行出错

有人知道如何对php中的数据进行排序,然后在表上显示排序后的数据结果吗

$container.handsontable({ 
  colHeaders: header(),//["Title", "Description", "Comments"],
  data : data(),
  //startRows: 3,
  columnSorting: true,
  startCols: 20,
  rowHeaders: true,
  colHeaders: true,
  minSpareRows: 1,
  contextMenu: true,
  copyRowsLimit: 100000,
  beforeChange: function (change, source) {
    if (source === 'loadData') {
        return; //don't save this change
    }
    if ($('input[name=autosave]').is(':checked')) {
        $("#dataconsole").html("<p>Please wait ...</p>").hide().fadeIn("slow"); 
      clearTimeout(autosaveNotification);
      $.ajax({
        url: "../php/save_auto.php?cmid=<?php echo $com_id;?>",
        type: "POST",
        data: {"changes": change}, //contains changed cells' data
        success: function (data) {
          $("#dataconsole").text('Autosaved (' + change.length + ' cell' + (change.length > 1 ? 's' : '') + ')');
          if(source !== 'program'){
            // reset current cell
            $( "td:contains('=')").text(data);
          } 
        }//complete
      });
    }//checked
  }//change
});

您可以做的是禁用排序插件,然后单击标题,向后端发送一个包含数据和排序参数的请求。在其中执行任何排序,然后在hotInstance上返回新的数据对象和更新设置,如下所示:


有了这个,你就可以走了。

但是。我怎样才能让whick column进行排序?只需检查您单击的标题的值。取决于您如何激活该单击事件。
hotInstance.updateSettings({
    data: newData
})