我有一个看起来像这样的dados.json文件:
[{\"activeSheetIndex\":0,\"sheetCount\":1,\"tabStripRatio\":0.5,\"tabStripVisible\":true,\"tabEditable\":true,\"newTabVisible\":true,\"referenceStyle\":0,\"useWijmoTheme\":false,\"canUserEditFormula\":true,\"startSheetIndex\":0,\"allowUndo\":true,\
等...
我的脚本正在尝试导入此文件:
function () {
var url = "dados.json";
$.ajax({
url: url,
datatype: "json",
success: function (data) {
try {
var sd //= JSON.parse(data);
if (sd.length > 0) {
var spread = $("#ss").wijspread("spread");
if (!spread) {
return;
}
spread.fromJSON(sd[0]);
}
}
catch (ex) {
}
},
error: function (ex) {
alert(ex);
}
});
};
这会产生一条警告信息[object OBJECT]
我也尝试从dados.json中删除反斜杠,但错误是一样的。
我做错了什么?
答案 0 :(得分:1)
您的JSON引号已转义,因此jquery不知道如何阅读它。如果将dataType设置为json,则实际上不应该对json进行解析。是什么产生了你的JSON?
删除斜杠后,通过验证器http://jsonlint.com/
运行JSON然后,在JS控制台日志数据中的try语句之后,看看你得到了什么。在你提出的代码中,sd只是声明但未定义。也许用数据替换它?