{
"status":"success",
"data":
{
"title":"Testing",
"token":"77fl",
"questions":
[{
"title":"How are you?",
"token":"UHGXI",
"kind":"multiple-choice",
"options":
[{
"content":"Good",
"token":"tLAzWd",
"kind":"text"
},
{
"content":"bad",
"token":"8LRR3t",
"kind":"text"
}]}]}}
我之前从未解析过JSON数据......解析这个问题的第一步是什么?我显然不需要所有这些,我需要所有“标题”,“善意”和“内容”的实例。
你这样做是否解析字符串?
这是我抓住它的功能......
$(document).ready(function(){
$("button").click(function(){
$.getJSON("http://quicksurvey.herokuapp.com/api/surveys/77fl/ask.json",function(result){
});
});
});
});
我的归档数据存储在哪里?它在'结果'中吗?
我对这一切都很陌生,所以如果我犯了一些明显的错误,我会道歉。我一直在寻找我的问题的答案,但无法找到一个简单的介绍。我想用javascript解析。
答案 0 :(得分:3)
答案是肯定的,它存储在结果中。 jQuery函数获取返回的JSON字符串并将其转换回代表所述字符串的本机javascript对象。如果没有返回带有名称的json字符串,那么result
变量将是对象本身。但在您的情况下,您将对象命名为data
,因此您应该像以下一样访问它:
$(document).ready(function(){
$("button").click(function(){
$.getJSON("http://quicksurvey.herokuapp.com/api/surveys/77fl/ask.json",function(result){
//result.data
//result.status
});
});
});
});
答案 1 :(得分:1)
是的,你可以,只需将其解析为jSON对象。您可以将属性和数组作为javascript对象或属性进行访问。 Fiddle
JS版
for(var i =0; i<result.data.questions.length; i++)
{
alert(result.data.questions[i].title + ' ' + result.data.questions[i].kind);
}
Jquery的: -
alert(result.data.title);
$.each(result.data.questions,function(i,o){
alert(o.title + ' ' + o.kind);
});