Jquery DataTable在加载时自动滚动到底部

前端之家收集整理的这篇文章主要介绍了Jquery DataTable在加载时自动滚动到底部前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用 jQuery DataTable插件,当数据通过AJAX加载时,无法找到使其滚动到表格底部方法.

所以我的页面的基本布局上有两个3 jQuery DataTables.从我通过检查呈现的代码看到的是插件将创建一个id为“myTableid_wrapper”的div包装器,其中有两个子节点和表格.

现在,如果表触发了滚动功能,那么表将再次被包装在另一个具有溢出的div:hidden中,以便可以滚动表.

该div的类名为“dataTables_scrollBody”.以下是未触发滚动功能的表的示例.

<div id="myTable1_wrapper" class="dataTables_wrapper" >
  <div id="case_activity_table_filter">no worried about this guy</div>
    <table id="myTable1" >does not matter whats in here</table>
</div>

以下是触发插件滚动功能的表的一般布局.正如您所看到的那样,插件自动生成类“dataTables_scrollBody”的div.

<div id="myTable2_wrapper" class="dataTables_wrapper" >
  <div id="case_activity_table_filter">no worried about this guy</div>
  <div class="dataTables_scrollBody" style="overflow:hidden" >
    <table id="myTable2" >does not matter whats in here</table>
  </div>
</div>

这两个表都位于同一页面上.这两个表都可能有也可能没有滚动div.

有没有办法定位类“dataTables_scrollBody”并在通过AJAX创建表时滚动到底?

解决方法

假设你像这样初始化了数据表:
var oTable = jQuery('#myTable1').dataTable({
    "bProcessing": true,"bPaginate": false,"sScrollY": "200","bScrollCollapse": true
});

你可以这样做:

oTable.parent().scrollTop(9999);

如果你有更多的数据,你可以增加滚动的数量,或者可能有办法找出包括溢出部分的表的高度.

使用ajax,您可能必须将scrollTop代码放在“fnInitComplete”回调函数中,因此它在呈现表后执行.

另一个想法:也许您可以通过aaSorting来反转行的顺序,然后您不必进行任何滚动.

猜你在找的jQuery相关文章