我有一个Web服务,它返回一个包含字符串“Hello World”的JSON对象。如何从对象中拉出此字符串?
data = [object Object]
由于
尼克
答案 0 :(得分:5)
你必须知道你的对象是什么,对象有什么成员。
您可以尝试类似
的内容for(var e in data)
alert(e + ' : ' + data[e]);
答案 1 :(得分:2)
您可以使用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/
答案 2 :(得分:0)
如果你正在使用jQuery的post函数,你可以按照这个例子找到here。
$.post("test.php", { func: "getNameAndTime" },
function(data){
alert(data.name); // John
console.log(data.time); // 2pm
}, "json");
在你的情况下,我怀疑你会调用data.data。