繁体   English   中英

jQuery DataTables单元样式

[英]jQuery DataTables cell styling

我正在使用jQuery DataTables,并且能够查看行数据并为行着色。

这是创建数据表的代码:

 var $dataTable = $('#example1').DataTable({
   "data": data,
   "dataType": "json",
   "iDisplayLength": 25,
   "order": [[6, "desc"]],
   "scrollY": 550,
   "scrollX": true,
   "bDestroy": true,
   "stateSave": true,
   // here is the part that styles the row
   "fnRowCallback": function(nRow, aData, iDisplayIndex, iDisplayIndexFull)
   {
     if (aData[12] == "Y"){$('td', nRow).css('background-color', '#EE6363');}
     if (aData[9] == "Y"){$('td', nRow).css('font-weight', 'bold');}
   }
 });

因此,如果您在上面的代码中注意到,则第一个if语句检查第12列的行数据(称为REJECTED)是否为“ Y”。 如果是这样,请将整个行设为红色。

第二个if语句检查第9列的行数据(称为URGENT)是否为“ Y”。 如果是这样,请将整个行的文本设为粗体。

我想做的是将该列的单元格设为红色,而不是整个行,主要是第一行。

如何更改上面的代码以实现此目的?

我无法测试...

但是我会尝试这样的事情:

if (aData[12] == "Y"){$('td', nRow)[12].css('background-color', '#EE6363');}

还是这个棘手的事情:

if (aData[12] == "Y"){$('td', nRow).parent().children()[12].css('background-color', '#EE6363');}

如果从零开始:

if (aData[12] == "Y"){$('td', nRow)[11].css('background-color', '#EE6363');}

要么:

if (aData[12] == "Y"){$('td', nRow).parent().children()[11].css('background-color', '#EE6363');}

这是将为目标单元着色的代码:

 if (aData[12] == "Y"){$('td', nRow).eq(1).css('background-color', '#BF5FFF');}

通过添加eq(1),我可以定位数据表中的第二个单元并为其着色。 这就是我如何使其工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM