我正在使用数据表,如果STATEMENT满足要求,目前仍然在将行更改为另一种颜色,已经尝试了很多东西,但它确实有很奇怪的错误,我的代码是:
"rowCallback": function( row, data, index ) {
if ( data[2] < data[4] ) {
$('td', row).css('background-color', 'pink');
}
}
在我的回复文件中,我写了这个查询:
$sql = "SELECT itemid,itemname,stock,unit,minimum FROM item WHERE type LIKE 'homecare'";
如果商品的库存低于用户设置的最小值,我想更改行颜色。
我运行的示例测试结果:
虽然两行“最小”列的数据库设置都是相同的数字(5)
感谢您的帮助!
答案 0 :(得分:3)
您似乎有9 cc
,10 cc
以及stock
列中的值?如果要进行数值比较,则必须将每列的数字提取为数字。我还会在.pink
添加<tr>
课程,而不是在所有background-color
上设置<td>
。
"rowCallback": function( row, data, index ) {
var stock = parseFloat(data[0]), //data[2]
minimum = parseFloat(data[1]), //data[4]
$node = this.api().row(row).nodes().to$();
if (stock < minimum ) {
$node.addClass('pink')
}
}
演示 - &gt;的 http://jsfiddle.net/104o96cn/ 强>
答案 1 :(得分:3)
New Datatable具有以下功能,用于突出显示该行:
"rowCallback": function( row, data, index ) {
if ( data[2] < data[4] ) {
//Highlight the cell value
$(row).find('td:eq(2)').css('color', 'red');
//Highlight the row
$(row).addClass("danger");
}
}
答案 2 :(得分:0)
这是如何更改数据表行背景(DataTables 1.10.19)的方法
"fnRowCallback": function( nRow, aData, iDisplayIndex, iDisplayIndexFull ) {
switch(aData['country_id']){
case 1:
$('td', nRow).css('background-color', '#dacfcf')
break;
}
}