2013-09-24 55 views
-3

我有一个java脚本的问题。这是我第一次使用JavaScript。

代码:

$.get(url, function(data){ 

    alert("Data Loaded: " + data); 

    var obj = JSON.parse(data); 

    alert(obj.result); 
} 

服务器返回一个简单的JSON字符串{"result":"aaaa"} 我怎样才能提取响应这个JSON字符串? 当我运行此代码警报显示未定义。

+0

只需调用'obj.result'。 –

+0

马上就有一个'{'错配。另外顺便问题是什么?你能解释一下吗? – PSL

+0

您不需要用'{'开始每一行。这会导致语法错误,从而阻止您的代码执行*任何操作*。在你解决这个问题之前,在处理其他任何问题时没有多大用处。我建议你在JavaScript上找到一个体面的教程,并且在尝试使用jQuery和/或AJAX之前,至少要掌握基本语法。 – meagar

回答

0

这个问题似乎不可重现。

JSON.parse('{"result":"aaaa"}').result 

产生“aaaa”。

做一些更多的调试是这样的:

$.get(url, function(data){ 

    alert("Data Loaded: " + data); 

    var obj = JSON.parse(data); 

    for (key in obj) { 
     alert(key + ": " + obj[key]); 
    } 
} 

这将遍历在返回的JSON所有的按键。希望你在那里有一个名为“result”的键。

0

这可能是你实际上不需要解析它。

$.get(url, function(data){ 

    alert(typeof data); // object 

    alert(data.result); // aaaaa 

}); 

没有一个dataType被指定,jQuery.get()将默认做出一项“智能猜”和相应的解析。

如果你想自己解析它,你可以指定'text'作为dataType

$.get(url, function(data){ 

    var obj = JSON.parse(data); 

    alert(obj.result); // aaaaa 

}, 'text'); 
相关问题