从JSON对象中提取字符串值

时间:2009-04-08 02:15:53

标签: asp.net javascript jquery web-services json

我有一个Web服务,它返回一个包含字符串“Hello World”的JSON对象。如何从对象中拉出此字符串?

data = [object Object]

由于

尼克

3 个答案:

答案 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。

相关问题