所以我有,我已經成功地傳遞到JS這個JSON struture:如何在JS中訪問嵌套的JSON?
{
"StepOne": [
{
"id": "2",
"type": "1",
"description": "How are you feeling?",
"options": [
{
"opt_id": "1",
"opt_desc": "Good"
},
{
"opt_id": "2",
"opt_desc": "Perfect"
},
.... etc
如此下去,直到PageFive和題量從1-4中的每一步變化和選擇從零到約10變化爲每個問題。我想用這些信息在Javascript中生成多步表單,但我無法弄清楚如何訪問內部數據。我只能找到「PAGEONE」,「PageTwo」等我使用這下面的代碼來做到這一點:
$(document).ready(function()
{
$('#show-results').click(function()
{
$.post('json.php', function(data)
{
var pushedData = jQuery.parseJSON(data);
$.each(pushedData, function(i, serverData)
{
alert(i);
})
})
})
});
現在,我已經嘗試了這些功能去的內在價值:
var desc = pushedData.PageOne.description;
var desc = pushedData['PageOne']['Description'];
而每個循環中我已經試過這樣的東西
var desc = PageOne.description;
var desc = PageOne['description'];
這一切都出來爲不確定。有沒有一種方法可以像遍歷頁面一樣遍歷每個頁面中的每個問題?從那裏沖洗並重復遍歷每個問題的選項?如果我可以訪問每個級別,我應該全部設置爲動態生成輪詢,這是此處的最終目標。
我認爲這段代碼是關於某些東西的(發現後我發佈)。雖然不是很努力。
$(document).ready(function()
{
$('#show-results').click(function()
{
$.post('JSAAN.php', function(data)
{
var pushedData = jQuery.parseJSON(data);
$.each(pushedData, function(i, stepData)
{
$.each(stepData, function(j, questionData)
{
// Print question here
$.each(questionData, function(k, optionData)
{
// Print option here
})
})
})
})
})
});
您正在嘗試訪問'PageOne',但您的示例具有'StepOne' ...是問題所在嗎? – 2012-07-17 09:11:41
StepOne = PageOne? – Sllix 2012-07-17 09:12:06
您確定pushData包含正確的JavaScript對象嗎? – Juri 2012-07-17 09:12:10