我正在尝试根据值更改行颜色,对于服务器端加载的数据表,但它不起作用。我在我的javascript上使用了这样的代码:
$('#table').dataTable({
'bServerSide': true,
'bProcessing': true,
'sAjaxSource': 'datatables/my_ajax.php',
'iDisplayLength': 50,
"sPaginationType": "bootstrap",
"fnInitComplete": function(oSettings) {
for (var i = 0, iLen = oSettings.aoData.length; i < iLen; i++) {
if (jQuery.inArray(oSettings.aoData[i]._aData[2], food_types) != -1) {
oSettings.aoData[i].nTr.className = "myClass";
}
}
},
myClass看起来像:
.myClass{
background-color: red;
}
.myClass td {
background-color: red;
}
因此,基本上当每行的第二个<td>
具有显示在食物类型数组上的值时,该类应该更改为myClass。这部分正在工作(我可以看到类已经改变的firebug),但是我看不到变化(我没有看到行转向红色背景)。我错过了什么?此外,这是一个很好的方法或更简洁的方法是直接改变ajax的颜色?如果是这样,怎么样?
答案 0 :(得分:3)
看起来你的dataTable的CSS包装器正在覆盖你的风格..也许这就是你没有看到backgroundcolor中的变化的原因..
看起来您需要更改应用它的类..
这些术语可能更多
table.display.myClass
{
background-color: red !important
}
table.display.myClass td
{
background-color: red !important
}
更像是猜测包装器,因为我不知道datatables插件所应用的确切类..