2012-12-07 81 views
0

你好我嘗試intialisation後呈現數據表並添加一個新行中的鏈接插入後的jQuery

這是我的代碼的一部分的「插入後」似乎並不奏效。

$('#table thead tr').each(function() { 
    nCloneTh.insertAfter(this.childNodes[5]); 
}); 

有人可以幫我嗎?我想在第五列後插入nCloneTh(th元素)。

THX的幫助

我的整個代碼看起來像這樣

$(document).ready(function() { 

var nCloneTh = document.createElement('th'); 
var nCloneTd = document.createElement('td'); 

nCloneTh.innerHTML = '<img src="style/img/icon_trash.png" id="imglink" title="Entfernen" class="center">'; 

$('#table thead tr').each(function() { 
    nCloneTh.insertAfter(this.childNodes[5]); 
}); 

$('#table tbody tr').each(function() { 
    nCloneTd.insertAfter(this.childNodes[5]); 
}); 

$('#table tfoot th').each(function() { 
    nCloneTh.insertAfter(this.childNodes[5]); 
}); 

dataTable = $('#table').dataTable({ 
    'bProcessing':true, 
    'bServerSide':true, 
    'sAjaxSource':'feedback.php', 
    "oLanguage": { 
     "sUrl": "language/dataTables.german.txt" 
    },'aoColumnDefs':[{'bSearchable': false, 'bVisible':false, 'aTargets':[0]}, 
     {'bSortable': false, 'aTargets':[5]}, 
     { 'fnRender': function(o,val){return '<a>tss</a>';}, 'aTargets': [ 6]} 
    ] 
}); 

dataTable.fnClearTable(0); 
dataTable.fnDraw(false); 

});

+0

你想添加一個新行或新列?看起來像一個新的專欄。每一行都有鏈接嗎? –

回答

2

數組爲0索引,因此您試圖在示例中的第六個<th>之後插入。另外,我注意到nCloneTh是一個DOM元素,而不是一個jQuery元素。請嘗試以下操作:

$('#table thead tr').each(function() { 
    $(nCloneTh).insertAfter($(this).children('th')[4]); 
}); 
+0

我試過了,但它沒有工作.. –

+0

您必須在錯誤控制檯中收到某種錯誤? – BenM

+0

我只注意到'nCloneTh'是一個節點,而不是一個jQuery對象。看到我更新的答案。 – BenM

1

nCloneTh需要被包裹在一個jQuery對象,以便使用inserAfter,像這樣:

var nCloneTh = $('<th></th>'); 

這裏是你可能會試圖完成一個例子 - http://jsfiddle.net/jmsessink/d3bLp/

1

您可以在數據表初始化中使用aoColumns來添加額外的列。對每個現有列使用null,然後使用mRender函數定義附加列。

dataTable = $('#table').dataTable({ 
    'bProcessing':true, 
    'bServerSide':true, 
    'sAjaxSource':'feedback.php', 
    "oLanguage": { 
     "sUrl": "language/dataTables.german.txt" 
    }, 
    'aoColumnDefs':[ 
     {'bSearchable': false, 'bVisible':false, 'aTargets':[0]}, 
     {'bSortable': false, 'aTargets':[5]}, 
     { 'fnRender': function(o,val){return '<a>tss</a>';}, 'aTargets': [ 6]} 
    ], 
    aoColumns: [ null, 
       null, 
       null, 
     { "sName": "ID", 
     "bSearchable": false, 
     "bSortable": false, 
     "fnRender": function (oObj) { 
      return "<img src='style/img/icon_trash.png' id='imglink' title='Entfernen'" + 
        " class='center'>"; 
     } 
     } 
    ] 
}); 

http://www.datatables.net/usage/columns