如何跳转到包含某个数据的页面

时间:2015-10-12 15:36:56

标签: jquery datatables

我有一个使用jQuery DataTables插件的表。因此,使用以下代码动态添加新行:

 var oTable = $('#table_question').DataTable();

 var row = oTable.row.add([5, "My Question", 45,]).node();

 oTable.row(row).draw(false);

我的数据表的页面长度是10,所以当我添加10行以上时,会发生分页,并且下一行会插入数据表的第2页。因此用户不会感到插入新行。

如果新行位于活动页面以外的页面上,如何自动跳转到下一页?

1 个答案:

答案 0 :(得分:0)

  

<强>解

使用page.jumpToData()插件通过搜索列中的数据来跳转到某个页面。

理想情况下,您需要选择包含唯一值的列。在下面的示例中,person的名称用于数据和列索引等于0(从零开始的索引)。

jQuery.fn.dataTable.Api.register( 'page.jumpToData()', function ( data, column ) {
    var pos = this.column(column, {order:'current'}).data().indexOf( data );

    if ( pos >= 0 ) {
        var page = Math.floor( pos / this.page.info().length );
        this.page( page ).draw( false );
    }

    return this;
} );

$(document).ready(function (){
    var table = $('#example').DataTable();

    var data = ["Joe Smith","System Architect","Edinburgh","5421","2011/04/25","$320,800"];

    var row = table.row.add(data).node();
    table.row(row).draw(false);

    // Use first column (index - 0) with Name to locate data in the table
    table.page.jumpToData(data[0], 0);
});
  

<强>样本

请参阅this jsFiddle以获取代码和演示。