我有一个带有详细信息行的数据表,类似于示例here。我想要做的是删除显示没有子数据的行的+ / i图标的类。应该很容易,但对于我的生活,我无法正确地从每行的第一个td中删除该类。
我的桌子。第一列只是一个图标,由类&d; dh-dtbl-details-control'添加。它被添加到每一行。
var oTable = $('#dh_phleb_tblComp').DataTable({
data: oColls.accs,
orderClasses: false,
"stripeClasses":['stripe1','stripe2'],
columns:[
{
"class":"dh-dtbl-details-control",
"orderable": false,
"data": null,
"defaultContent": ""
},
{data: 'collection_priority_disp'},
{data: 'encntr_location'}
]
});
创建表格后,我会遍历各行,检查子数据。这很好用。我遇到问题的是识别有关类的td,以便我可以删除它。任何帮助将不胜感激。
oTable.rows().data().each(function(value, index, id) {
var row = oTable.row(index);
var node = oTable.row(index).node();
if (value.container_cnt === 0){
alert("no containers");
var td = $(row).find("td:first"); //doesn't seem to be right
alert(td.className); //returning 'undefined'
//$('td', row).removeClass("dh-dtbl-details-control"); //what I want to do
}
答案 0 :(得分:0)
最终是$(node).find(" .dh-dtbl-details_control")。removeClass(" dh-dtb l-details-control")。
请参阅评论,了解指向正确的方向
答案 1 :(得分:0)
你接近它,事实上你给了我一个关于我的项目的想法
var oTable = $('#dh_phleb_tblComp').DataTable({
data: oColls.accs,
orderClasses: false,
"stripeClasses": ['stripe1', 'stripe2'],
columns: [
{
"class": "dh-dtbl-details-control",
"orderable": false,
"data": null,
"defaultContent": ""
},
{data: 'collection_priority_disp'},
{data: 'encntr_location'}
],
// here you iterate each created row and ask for the first td and then you remove
// or add , or whatever you want to assign to this fist TD
"createdRow": function (row, data) {
$(row).find("td:first").removeClass('dh-dtbl-details-control');
}
});