初始化后的数据表rowCallback函数

时间:2019-10-15 06:27:33

标签: javascript jquery datatable datatables

我有下面的数据表工作代码,可以根据条件设置单元格颜色。

$(document).ready(function() {
  // DataTable
  var table = $('#example').DataTable({
    /*
      dom: 'Bfrtip',
      buttons: ['excel',{
extend: 'pdfHtml5',
orientation: 'landscape',
pageSize: 'LEGAL' }],
      "ordering": false,
       language: {
        search: "_INPUT_",
        searchPlaceholder: "Search All Data"
      } */
    rowCallback: function(row, data, index) {
      console.log(row)
      if (data[12].split(';')[1] == "In Progress") {
        $(row).find('td:eq(11)').addClass('color')
      }
    }
  });
});

上面的代码工作正常,但是如果我删除了要添加导出功能的注释部分,它将无法正常工作。

1 个答案:

答案 0 :(得分:1)

我尝试重现您面临的相同问题。我创建了一个jsfiddle example,它工作得很好。我在您的代码中所做的唯一更改是,在(,)之前添加了逗号rowCallback,如下所示:

$('#example').DataTable({
  dom: 'Bfrtip',
  buttons: ['excel',{
        extend: 'pdfHtml5',
        orientation: 'landscape',
        pageSize: 'LEGAL' }],
        "ordering": false,
         language: {
          search: "_INPUT_",
          searchPlaceholder: "Search All Data"
        },
      rowCallback: function(row, data, index) {
        console.log(row)
        if (data[12].split(';')[0] == "In Progress") {
          $(row).find('td:eq(11)').addClass('color')
        }
      }
});

,此外,请重新检查与jQuery数据表相关的文件是否与我在jsfiddle中添加的文件相同,有可能您两次添加了文件,或者您可能正在使用旧版的Jquery。如果问题仍然存在,请编辑问题并添加html +与初始化的jquery相关的文件。