English 中文(简体)
把字符串值的JSON对象
原标题:
  • 时间:2009-04-08 02:15:52
  •  标签:

我有一个web服务,它返回一个JSON对象包含字符串“Hello World”。我怎么把这个字符串的对象?

data =(对象对象)

谢谢

尼克

最佳回答

你必须知道你的对象,对象成员。

你可以试着喜欢的东西

for(var e in data)
    alert(e +   :   + data[e]);
问题回答

您可以使用<代码> eval > < /代码:

var foo = eval( (  + data +  ) );

但这可能是危险的,特别是如果你不相信从服务器发送。因此,最好的方法(和最安全的方法)来提取数据从一个JSON对象是使用< a href = " http://www.json.org/js.html " rel = " nofollow noreferrer " > Crockford年代JSON库< / >:

var foo = JSON.parse(data);

顺便说一句,如果你使用jQuery查询ASP。净Web服务,小心的<代码> d。> < /代码问题(作为容器对象)。因此提取返回的对象,你要做的:

var foo = JSON.parse(data);
if (foo) {
    //Foo is not null
    foo = f.d;
}

更多的信息关于这个:< a href = " http://encosia.com/2008/03/27/using-jquery-to-consume-aspnet-json-web-services/ " rel = " nofollow noreferrer " > http://encosia.com/2008/03/27/using-jquery-to-consume-aspnet-json-web-services/ < / >

如果您正在使用jQuery函数后你可能会遵循这个例子中发现< a href = " http://docs.jquery.com/Ajax/jQuery.post " rel = " nofollow noreferrer " > < / >。

$.post("test.php", { func: "getNameAndTime" },
    function (data) {
        alert(data.name); // John
        console.log(data.time); //  2pm
    }, "json");

在你的情况中,我会怀疑你会叫data.data。





相关问题
热门标签