【发布时间】:2009-04-06 09:21:28
【问题描述】:
使用 jQuery 加载一些 JSON 数据时出现解析错误。这是我的代码的 sn-p:
jQuery.ajax({
dataType: "json",
success: function (json)
{
jQuery.each(json, function ()
{
alert(this["columnName"]);
});
}
});
解析非空 JSON 对象时没有错误。所以我的猜测是问题出在我的序列化程序上。
问题是:如何格式化 jQuery 不会认为格式错误的空 JSON 对象?
这是我迄今为止尝试过的,但没有成功:
{[]}
{[null]}
{}
{null}
{"rows": []}
{"rows": null}
{"rows": {}}
更新:
我可以理解我有些含糊不清——让我试着澄清一下:
解析 JSON 对象不是这里的问题——我认为是 JQuery。
jQuery 抛出一个解析错误(调用错误函数)。似乎 jQuery 的内部 JSON 验证不接受任何前面提到的对象。甚至不是有效的。
误差函数的输出为:
XMLHttpRequest:XMLHttpRequest readyState=4 status=200textStatus:parsererrorerrorThrown:undefined
这适用于前面提到的所有对象。
【问题讨论】:
-
这就是子集的问题,他们没有全部。
-
除了你是第三个例子之外的所有例子都不是有效的 JSON,因为字典中没有键
-
更新了一些尝试。仍然出现解析错误。
-
一个json对象只是一个对象字面量?还是真的?
-
我想我也有同样的问题。我只是在 FireBug 中看到错误消息:“[Exception...”'SyntaxError: JSON.parse' when调用方法:[nsIDOMEventListener::handleEvent]”nsresult:“0x8057001c (NS_ERROR_XPC_JS_THREW_JS_OBJECT)”位置:“
”数据: 不]”。有什么解决办法吗?
标签: javascript jquery json