根据数据ajax数据表放置一个类

时间:2015-05-14 19:21:37

标签: jquery ajax json jquery-datatables

我搜索了很多,我非常确定它可以轻松完成,但我找不到办法。所以我使用jQuery DataTables,我尝试生成一个类,并根据我收到的值进行一些javascript操作。例如,当单位为负数时,就像放置红色背景一样简单,等等。我已经为此创建了CSS,现在我通过DataTables的ajax参数加载JSON文件。这是我的javascript:

     table = $('#activitiesTable').DataTable({
            "ajax": "data.txt",
            "columns": [
                { "data": "id" },
                { "data": "description" },
                { "data": "type_of_expenditure" },
                { "data": "real_cost" }
            ]
        });

我知道在columns参数中,你可以通过调用" className"来设置一个类。在json中,但我不确定如何通过比较变量来生成类。例如,我想这样做:

      "columns": [
            {
               "data" : "id",
               "className": (data.id < 0 ? "negative" : "positive"))
            } 
       ]

不确定这是否可以这样做?或者,如果我每次启动ajax调用时都必须检查jQuery,但我觉得可以很容易地在那里初始化...

1 个答案:

答案 0 :(得分:0)

我发现你可以这样使用它:

                 { 
                    "data": "forcast_profit_loss",
                    "createdCell": function (td, cellData, rowData, row, col) {
                      if ( cellData < 0 ) {
                        $(td).addClass('number number-negative');
                        $(td).text(cellData.substr(1));
                      }
                      else{
                        $(td).addClass('number number-positive');
                      }
                    }
                }

您可以在那里找到有关它的参考资料:https://datatables.net/reference/option/columns.createdCell