2011-11-11 49 views
2

我正在使用jQuery datatables插件與分頁,排序。有多頁數據呈現給用戶。數據表數據定期用ajax json數據源刷新。datatables排序後得到行位置

我從數據庫中選擇一行,然後該行的值發生變化,因爲存在分頁,因爲對選中的行進行排序可能會滑入其他頁面,並且除非用戶滾動到其條目所在的頁面,否則對用戶不可見。

我試過fnGetPosition()但它只顯示我在aaData源中的tr位置。

問題是如何獲得行位置中的數據表的排序,所以我可以切換到),其含有的陣列fnGetPosition() [適當的頁面,選擇的條目被標記

+1

該問題的一些代碼和html示例會有所幫助。 – JohnFx

回答

2

fnSettings(具有屬性稱爲aiDisplayMaster後0]值,我設法用它來解決它。

0

此代碼會將您移動到具有給定行的頁面(在我的情況下,它是一個帶有.selectedItem類的行的頁面)。但是,它使用更新的數據表API。

function moveToPageWithSelectedItem() { 
    var numberOfRows = itemsTable.data().length; 
    var rowsOnOnePage = itemsTable.page.len(); 
    if (rowsOnOnePage < numberOfRows) { 
     var selectedNode = itemsTable.row(".selectedItem").node(); 
     var nodePosition = itemsTable.rows({order: 'current'}).nodes().indexOf(selectedNode); 
     var pageNumber = Math.floor(nodePosition/rowsOnOnePage); 
     itemsTable.page(pageNumber).draw(false); //move to page with the element 
    } 
}