我有一张使用jQuery DataTables插件的桌子。因此,我将使用下面的代码动态添加新行:
var oTable = $('#table_question').DataTable();
var row = oTable.row.add([5, "My Question", 45,]).node();
oTable.row(row).draw(false);datatable的页长为10,因此,当我添加更多10行时,会发生分页,下一行将插入datatable的第2页。这样,用户就不会有任何插入新行的感觉。
如果新行不在活动页,那么如何自动跳转到下一页?
发布于 2015-10-12 16:40:10
溶液
使用page.jumpToData()插件可以通过搜索列中的数据跳转到页面。
理想情况下,您需要选择包含唯一值的列。在下面的示例中,人名与等于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);
});演示
有关代码和演示,请参见这个jsFiddle。
https://stackoverflow.com/questions/33084981
复制相似问题