【问题标题】:DataTables API - ColumnDefs and RenderDataTables API - ColumnDefs 和渲染
【发布时间】:2017-11-09 08:13:51
【问题描述】:

没有 ColumnnDefs + Rendering 函数,它可以正常工作并正确渲染表格。使用 ColumnDefs + Render 我收到以下错误。我使用的数据表版本位于http://rawgit.com/DataTables/DataTables/master/media/js/jquery.dataTables.js

 Uncaught TypeError: Cannot set property '_DT_CellIndex' of undefined
        at _fnCreateTr (jquery.dataTables.js:3115)
        at _fnAddData (jquery.dataTables.js:2434)
        at HTMLTableRowElement.<anonymous> (jquery.dataTables.js:2462)
        at jquery-2.1.1.js:144
        at Function.map (jquery-2.1.1.js:468)
        at jQuery.fn.init.map (jquery-2.1.1.js:143)
        at _fnAddTr (jquery.dataTables.js:2460)
        at loadedInit (jquery.dataTables.js:1307)
        at HTMLTableElement.<anonymous> (jquery.dataTables.js:1332)
        at Function.each (jquery-2.1.1.js:375)


<script>
                $(document).ready(function () {

                    $('#main_table').DataTable(
                        {
                            'fixedHeader': true,
                            'order': [[14, 'desc']],
                            'aoColumns': [
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null,
                                null 
                            ],
                            'columnDefs': [{
                                'render': function (data, type, row) {
                                    //add case logic to convert 0 to 'N' and 1 to 'Y' in Exclude field
                                    if (data == row["Exclude"] && data != null) 
                                        if (data == "1") {
                                            return "Y";
                                        } else {
                                            return "N";
                                        }
                                    }
                                },
                                "targets": 17
                            }
                            ]
                        }




                        );




                });
</script>

【问题讨论】:

    标签: javascript datatables


    【解决方案1】:

    您有 17 列(aoColumns 数组中的 17 个条目),但使用 "targets": 17 以第 18 列为目标,因为它被解释为从零开始的索引。

    "targets": 17 更改为"targets": 16 以定位最后一列中的单元格。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-26
      • 2014-10-08
      • 2018-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多