0

我已经使用html表单中的href调用了一个api,它作为响应将json作为输出。将其视为 api 提供的 json

{
"entry":
{
"id": "1",
"name": "SA"
}
}

我想要 id 和 name 的值。我如何才能专门获取值并将这些值存储到变量中。我也必须使用 javascript 在 html 表单中执行此操作。

4

3 回答 3

3

我想要 city_id 和 city_name 的值。我如何才能专门获取值并将这些值存储到变量中

用于JSON.parse将其转换为 JS 对象并获取您的值:

var obj = JSON.parse(yourJSON);
var city_id = obj['entry']['city_id'];
var city_name = obj['entry']['city_name'];

文件:

于 2012-07-02T05:59:03.363 回答
0

eval() 函数或 JSON 解析器都将允许您从 JSON 创建一个对象,然后正常访问这些字段。JSON 解析器更安全一些,如本教程中所述:

http://www.w3schools.com/json/json_eval.asp

于 2012-07-02T06:08:12.173 回答
0
var a;
eval('a={"entry":{"@collection_url":"http://api.storageroomapp.com/accounts/4fe004c598f46026cc000002/collections/4fe0063798f4602e2c000016","@created_at": "2012-06-21T09:12:40Z","@trash": false,"@type": "City","@updated_at": "2012-06-21T09:12:40Z","@url":"http://api.storageroomapp.com/accounts/4fe004c598f46026cc000002/collections/4fe0063798f460e2c000016/entries/4fe2e58898f4604757000006","@version": 1,"city_id": "City_001","city_name": "London"}}');

换句话说

eval ('a={/*response object*/}')

现在您拥有 (a) 作为包含您的数据的对象,您可以访问它们,无论是对象表示法 (a.entry) 还是数组 (a['entry']),您也可以使用 json 解析,但它与所有浏览器不兼容

于 2012-07-02T05:59:02.520 回答