我有这个JSON(根据JSONLint验证):
[
{
"BugCount":"2",
"BugTitle":"C:\\INETPUB\\WWWROOT\\CLUBREADY2\\TRAINERS\\../Connections/LTC.asp",
"ErrLine":"141",
"BugID":"702"
},
{
"BugCount":"1",
"BugTitle":"/admin/ajax_logagreementsig.asp",
"ErrLine":"0",
"BugID":"1322"
},
]
然而,当我在其上运行data = json.evalJSON
时,我遇到了一些问题。
如果我运行.evalJSON(true)(清理),则在原型中发生错误,说“json”未定义。如果我执行.evalJSON()。
如果我没有括号的.evalJSON,那么数据只是一个空对象,不会发生错误。
我的JSON有问题吗?
答案 0 :(得分:1)
这只是一个javascript对象,你不需要评估任何东西来实现它。
var data = [
{
"BugCount":"2",
"BugTitle":"C:\\INETPUB\\WWWROOT\\CLUBREADY2\\TRAINERS\\../Connections/LTC.asp",
"ErrLine":"141",
"BugID":"702"
},
{
"BugCount":"1",
"BugTitle":"/admin/ajax_logagreementsig.asp",
"ErrLine":"0",
"BugID":"1322"
}
];
上面会很好,你的data
var会解析为两个项目的数组。请注意,我删除了该列表中的尾随逗号,因为它会在IE中导致第三个空值项,但在大多数其他浏览器中不会。
答案 1 :(得分:0)
我发现了我的问题,这是一个愚蠢的事情。 我不小心在我的.aspx页面上留下了返回JSON的默认HTML,所以在我试图评估为JSON的字符串中有一个完整的“”构建的网页。