3

我正在使用 AJAX.Net 调用 ASP.Net PageMethod,它返回 JSON 序列化的 JSON 数据

{"d":"[{\"Fromaddress\":\"testfrom1@test.com\",\"Toaddress\":\"testto1@test.com\"},{\"Fromaddress\":\"testfrom2@test.com\",\"Toaddress\":\"testto2@test.com\"}]"}

响应标头将内容类型声明为

"Content-Type   application/json; charset=utf-8"

但是,数据只能作为字符串使用,似乎不能作为来自 javascript 的 JSON 数据使用。我需要做什么才能将返回的数据作为来自 javascript 的 JSON 进行处理?

4

1 回答 1

4
var myData = eval('(' + text + ')');

尽管这可能存在安全风险。相反,您可能想要使用 JSON 解析器,例如这个可用的表单https://github.com/douglascrockford/JSON-js/blob/master/json2.js

然后你会得到如下符号:

var myData = JSON.parse(text);

有关此特定解析器的更多信息,请参见http://www.json.org/js.html ... 我相信还有其他可供选择,并且它们的工作方式非常相似。

于 2010-01-12T21:51:14.157 回答