将JSON数据导入DOM错误

时间:2013-10-15 13:55:15

标签: javascript json

我有一个看起来像这样的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中删除反斜杠,但错误是一样的。

我做错了什么?

1 个答案:

答案 0 :(得分:1)

您的JSON引号已转义,因此jquery不知道如何阅读它。如果将dataType设置为json,则实际上不应该对json进行解析。是什么产生了你的JSON?

删除斜杠后,通过验证器http://jsonlint.com/

运行JSON

然后,在JS控制台日志数据中的try语句之后,看看你得到了什么。在你提出的代码中,sd只是声明但未定义。也许用数据替换它?