IE中的jQuery datatables“表中没有数据”

时间:2012-07-11 09:32:50

标签: jquery datatables

我有一个包含数据表的弹出窗口,数据显示在firefox和chrome中。

在IE中(我有IE 9)我没有数据和消息“表中没有数据可用”。

如果我这样做

console.log(historyArray);

我确实在控制台中获取数据。

以下是数据表代码,如何解决IE问题?

   myTable = $('#report').dataTable({
     "aaData": historyArray,
     "aoColumns": [{
       "mDataProp": "User"
     }, {
       "mDataProp": "Timestamp"
     }, {
       "mDataProp": "Latitude"
     }, {
       "mDataProp": "Longitude"
     }, {
       "mDataProp": "Address"
     }],
     "bPaginate": false,
     "bJQueryUI": true,
     "sDom": '<"H"Tfr>t<"F"ip>',
     "oTableTools": {
       "sSwfPath": "swf/copy_csv_xls_pdf.swf",
       "aButtons": ["copy", "csv", "xls", "pdf"]
     },
     "fnInitComplete": function () {
       addClasses();
     }
   });

FIX UPDATE

由于某种原因,数据表不想使用window.opener提取的数组,即使它已经收到了。

我通过创建一个新数组并将值推入其中来修复它。然后将newArray数据提供给数据表。

 var newArray = [];
 var historyArray = window.opener.historyArray;

 for (var key in historyArray) {
   newArray.push(historyArray[key])
 }

2 个答案:

答案 0 :(得分:1)

根据控制台日志,问题在于:

window.opener.closeReportWindow();

它说:

SCRIPT438: Object doesn't support property or method 'closeReportWindow' 

请改为尝试:

window.close();

还要将jQuery更新为1.7.2版。

答案 1 :(得分:0)

FIX UPDATE

由于某种原因,数据表不想使用window.opener提取的数组,即使它已经收到了。

我通过创建一个新数组并将值推入其中来修复它。然后将newArray数据提供给数据表。

 var newArray = [];
 var historyArray = window.opener.historyArray;

 for (var key in historyArray) {
   newArray.push(historyArray[key])
 }