【发布时间】:2023-03-06 01:07:01
【问题描述】:
我有一个 Web 服务,它返回一个 JSON 对象,其中包含字符串“Hello World”。如何将这个字符串拉出对象?
数据 = [对象对象]
谢谢
尼克
【问题讨论】:
标签: asp.net javascript jquery web-services json
我有一个 Web 服务,它返回一个 JSON 对象,其中包含字符串“Hello World”。如何将这个字符串拉出对象?
数据 = [对象对象]
谢谢
尼克
【问题讨论】:
标签: asp.net javascript jquery web-services json
你必须知道你的对象是怎样的,对象有哪些成员。
你可以试试
for(var e in data)
alert(e + ' : ' + data[e]);
【讨论】:
您可以使用eval:
var foo = eval('(' + data + ')');
但这有潜在的危险,特别是如果您不信任从服务器发送的内容。因此,从 JSON 对象中提取数据的最佳方式(也是最安全的方式)是使用 Crockford's JSON library:
var foo = JSON.parse(data);
顺便说一句,如果您使用 jQuery 查询 ASP.Net Web 服务,请注意 d. 问题(用作容器对象)。因此,要提取返回的对象,您必须这样做:
var foo = JSON.parse(data);
if (foo) {
//Foo is not null
foo = f.d;
}
更多信息请点击此处:http://encosia.com/2008/03/27/using-jquery-to-consume-aspnet-json-web-services/
【讨论】:
如果你使用 jQuery 的 post 函数,你可以按照这个例子找到here。
$.post("test.php", { func: "getNameAndTime" },
function (data) {
alert(data.name); // John
console.log(data.time); // 2pm
}, "json");
在你的情况下,我怀疑你会调用 data.data。
【讨论】: