未捕获的类型错误:无法读取未定义 ONn 数据表的属性“样式”

Posted

技术标签:

【中文标题】未捕获的类型错误:无法读取未定义 ONn 数据表的属性“样式”【英文标题】:Uncaught TypeError: Cannot read property 'style' of undefined ONn Datatables 【发布时间】:2017-01-29 03:34:18 【问题描述】:

我有这样的代码

var monthNames = ["January", "February", "March", "April", "May", "June",
                                      "July", "August", "September", "October", "November", "December"
                                    ];
                while (dateStart <= dateEnd) 
                    dateLoop.push(name : monthNames[dateStart.getMonth()] + ' ' +  dateStart.getFullYear() );
                    var newDate = dateStart.setDate(dateStart.getMonth() + 1);
                    dateStart.setMonth(dateStart.getMonth() + 1);
                
var jsonArray = "Columns":dateLoop;
                var columnArray = jsonArray['Columns']; 
                var titleArray = [];
                var title = ;
                title['title'] = "Buyer";
                titleArray.push(title);

                var i = 0;
                for ( 
                var j = 0; j < columnArray.length; j++) 
                    var temp2 = ;
                    temp2['title'] = columnArray[i]["name"];
                    titleArray.push(temp2);
                    i = i + 1;
                ;

我用来在数据表上添加列的代码

$('#del-date').DataTable( 
                    "filter": false,
                    "destroy": true,
                    "processing": true,
                    "serverSide": true,
                    "columns": titleArray,
                    "ajax":
                        url : host+'qty/'+oderby+'?buyer='+buyer+'&dari='+begin+'&sampai='+end,
                        error: function()  // error handling
                            console.log(error);
                        
                    
                ).draw();

首先我提交我的过滤器是按钮,工作正常并显示我想要的数据,但是当我更改过滤器时显示错误 Uncaught TypeError: Cannot read property 'style' of undefined

如何解决?对不起,我的语言不好。我依靠这段代码

更新:这个屏幕截图我收到错误

更新已解决!!!!我改成这样的代码:

$.ajax(
                    "url": host+'qty/'+oderby+'?buyer='+buyer+'&dari='+begin+'&sampai='+end,
                    "success": function(json) 
                        var tableHeaders;
                        $.each(json.columns, function(i, val)
                            tableHeaders += "<th>" + val + "</th>";
                        );

                        $("#tableDiv").empty();
                        $("#tableDiv").append('<table id="displayTable" class="dataTable table table-bordered table-hover table-full-width" cellspacing="0" ><thead><tr>' + tableHeaders + '</tr></thead></table>');
                        //$("#tableDiv").find("table thead tr").append(tableHeaders);  

                        $('#displayTable').dataTable(json);
                    ,
                    "dataType": "json"
                );

我使用控制器和 mysql 来创建 json。问题解决。

【问题讨论】:

是否可以创建一个jsfiddle? @AneeshSivaraman : 我不能用 mysql 来做这个 【参考方案1】:

当传递给列的 titleArray 的数量(“columns”:titleArray)小于您的表(tableHeaders)的列数时,就会发生这种情况。

【讨论】:

以上是关于未捕获的类型错误:无法读取未定义 ONn 数据表的属性“样式”的主要内容,如果未能解决你的问题,请参考以下文章

数据表:未捕获的类型错误:无法读取未定义的属性“按钮”

未捕获的类型错误:无法读取未定义的属性“名称”

数据表:未捕获的类型错误:无法读取未定义的属性“长度”?

数据表插件错误未捕获的类型错误:无法读取未定义的属性“mData”

错误::未捕获(承诺中)类型错误:无法读取未定义的属性“内容”

未捕获的类型错误:无法读取 JQuery DataTable 未定义的属性“mData”