1

我正在尝试使用jQuery Datatables构建表。除ie7和ie8外,所有浏览器都可以使用。ie7和ie8无法获取属性值

以下是错误:

SCRIPT5007: Unable to get value of the property 'sName': object is null or undefined 

这里是JS代码:

var jsonData = []; 

for (var i = 0; i < docs.length; i++) { 
    var obj = docs[i]; 

    var row = []; 

    row.push('<input type="checkbox" class="article_checkbox" />'); 

    for (var j = 1; j < columns.length; j++) { 

     var value = obj[columns[j].sName]; 
     console.log(value); 
     row.push(value); 
    } 

    jsonData.push(row); 
}; 

我唯一的想法是,JSON响应有一个宽松的逗号的地方,但我跑它通过jsonlint它回来有效。

关于这个讨厌小事的任何想法?

谢谢!

+0

在列上使用console.log [j] – cwallenpoole

+0

嗨@cwallenpoole, 感谢您的回复。这是控制台中返回的内容。 (A缩短的版本,由于在这里评论字符) 对象{SNAME = “hasAlikeDocuments”,bVisible = FALSE} 对象{sTitle = “日期”,SNAME = “createDateDisplay”} 对象{sTitle = “源” ,sName =“sourceName”} Object {sTitle =“Articles”,sClass =“dt_title”,sName =“title”} 对象{sTitle =“快速工具”,sClass =“dt_tools”} Object {sName = isArchived“,bVisible = false} Object {sName =”isTranslatable“,bVisible = false} – PropSoft

回答

0

所有SNAME定义必须被包裹在双引号:)

2

我有一个类似的问题,这个问题是我在数组的末尾有一个额外的,

+1

非常感谢!我有类似的问题,并花了整整一个早上试图弄清楚。我永远不会怀疑名单末尾的逗号。 – yitz