我知道這裏有一個類似的問題JQuery DataTables: How to show/hide row details with multiple tables?但這並不完全適用於我目前的問題。JQuery DataTables:顯示/隱藏多個表的行細節
我的代碼:
var oTable = $('.dataTable').dataTable({
"aoColumnDefs": [
{ "bSortable": false, "aTargets": [ 0,3,4 ] },
{ "bVisible": false, "aTargets": [ 4 ] }
],
"aoColumns": [
null,
null,
null,
null,
{ "sType": "html" }
],
"aaSorting": [[1, 'asc']],
"bFilter": false,
"bPaginate": false,
"fnInitComplete": function(oSettings) {
/* Add event listener for opening and closing details
* Note that the indicator for showing which row is open is not controlled by DataTables,
* rather it is done here
*/
$('.dataTable tbody td img').live('click', function() {
var nTr = this.parentNode.parentNode;
if (oTable.fnIsOpen(nTr)) {
// This row is already open - close it
this.src = "css/images/details_open.png";
oTable.fnClose(nTr);
} else {
// Open this row
this.src = "css/images/details_close.png";
oTable.fnOpen(nTr, fnFormatDetails(oTable, nTr), 'details');
}
});
}
});
這工作如果只有一個,如果我DataTable類添加到第二個表,然後他們的工作作爲數據表,但顯示/隱藏按鈕,兩個表中的失敗。兩個表都有相同數量的字段和內容,只是爲了使其工作,但仍然沒有成功。
在類似的帖子,該人士建議說:
tbl = $(this).parent().parent().dataTable();
的點擊功能,但我已經試過了,並沒有奏效。
我在想什麼?
什麼是你的表的ID?確保這些ID是唯一的。它看起來像使用類選擇器創建表dataTables。如果這些ID不是唯一的,則會導致問題。 – 2013-05-10 20:01:19
dataTables不需要ID作爲選擇器 – Fabi 2013-05-10 20:44:23
我沒有說它確實需要一個ID作爲選擇器。但是如果ID不是唯一的,你會遇到問題。看到我的答案在這裏:http://stackoverflow.com/questions/16463646/ – 2013-05-10 20:50:22