0

我正在向服务器发送 AJAX 请求,并使用 javascript 代码从服务器将响应作为 json 对象检索到我的 android 应用程序。我知道 json 对象的键值(ID、名称、状态等),但我不知道如何获取它们的值。(100、标记、成功等)我需要这些数据来处理其他一些任务. 有人可以告诉我如何从该 json 对象中提取数据。当我使用 alert(http.responseText); 如下我得到显示的json对象。我需要从中获取价值。

用于接收响应的方法

http.onreadystatechange = function() { //Handler function for call back on state change.
    if(http.readyState == 4) {
        alert(http.responseText);

我收到的 json 对象

{"header": {"ID":100,"name:"Mark"},"body":{"status":"success"}}
4

3 回答 3

1

您需要使用以下方法将其转换为 JavaScript 对象JSON.parse

var obj = JSON.parse(http.responseText);

由于一些旧版浏览器不支持原生 JSON,因此您应该包含json2.js来为这些浏览器填充它。

于 2012-07-02T11:19:44.713 回答
1

您必须通过执行将字符串转换为对象var response=JSON.parse(http.responseText);

就像对待任何物体一样对待它 -console.log(response['name'])

于 2012-07-02T11:20:08.977 回答
0

您将不得不评估 http.responseText 以获取 json 对象...

但不推荐使用 eval,所以可以使用json2库将文本解析为 json 对象。

否则您甚至可以使用 jquery 之类的库并使用函数 parseJSON 将其转换为 json 对象

于 2012-07-02T11:20:34.960 回答