0

我在任何地方都找不到这个功能。使用DataTables排序/分页的 PHP 服务器处理时,是否可以向表中的列添加类?因为 PHP 脚本只返回单元格数据,而不是任何设置。示例:我的列具有正值或负值。我想在内部数字为正数时突出显示单元格为绿色,如果为负数则突出显示为红色。我使用在 AJAX 源代码演示中也使用的标准文件

这是我的初始化:

$(document).ready(function() {
    $('#example').dataTable( {
        "bProcessing": true,
        "bServerSide": true,
        "sAjaxSource": "../server_side/scripts/server_processing.php"
    } );
} );

PHP 输出返回一个 JSON 字符串,由一个 PHP 数组组成,像这样(生成的 JSON):

{
  "sEcho":1,
  "iTotalRecords":"3",
  "iTotalDisplayRecords":"3",
  "aaData":[{ "0":"1 Oct 2013","1"=>"-9999","2"=>"11111"  }]
}

我需要为 -9999 到红色和 11111 到绿色的类设置一个类。有任何想法吗?

4

1 回答 1

1

http://datatables.net/examples/advanced_init/row_callback.html

您为 fnRowCallback 编写一个自定义函数并检查您感兴趣的单元格索引集,如果数字是正数或负数。然后,您可以用您的自定义 html 替换单元格内容。

因此,在您的情况下,它将是:

    "fnRowCallback": function( nRow, aData, iDisplayIndex ) {
                /* Append the grade to the default row class name */
                if ( aData[1] > 0)
                {
                    $('td:eq(1)', nRow).html( "<span class='green'>" + $('td:eq(1)', nRow).html() + "</span>" );
                } else {
                   //set to red
                }
                // do the same for td[2]
                return nRow;
            },
于 2013-10-30T01:40:55.147 回答