2017-06-17 98 views
0

我想通過調查提醒()不同的JSON答案。我可以顯示所有內容,但是我只能顯示所選答案。因爲這是一項調查,答案每次都會改變。這裏是我的代碼:JSON顯示特定答案

var resultAsString = JSON.stringify(survey.data); 
    alert(resultAsString) 

,這裏是我在警報獲得

{"question1":"item4","question2":["faire","lion","elephant "],"question3":{"Row 1":"Column 2"}} 

我想提醒()只的答案seperately(即ITEM4;「自由放任」,「獅子「,」elephant「]; {」Row 1「:」Column 2「})我嘗試了下面的代碼,但沒有顯示任何內容。你可以幫我嗎。

alert(resultAsString.question1) 
    alert(resultAsString.question2) 
    alert(resultAsString.question3) 
+0

不要使用'resultAsString',而是'survey.data'。喜歡這個'alert(survey.data.question1);' –

回答

0

您字符串化的JSON,然後訪問它像鍵/值對的對象。請像這樣做

var result = survey.data; 

alert(result.question1); 
alert(result.question2); 
alert(result.question3); 

很顯然,你將不得不在這個數組中更多問題的答案隨着時間的推移,以便單獨訪問每個問題不能得到很好的解決。

試試這個。

var result = survey.data; 
var resultKeys = Object.keys(result); 

for(var i = 0; i < resultKeys.length; i++) { 
if(typeof result[resultKeys[i]] === 'object') 
    alert(JSON.stringify(result[resultKeys[i]])); 
else 
    alert(result[resultKeys[i]]); 
} 
+0

謝謝!是的,這是一個更好的方式來做到這一點。但它對question3「question3」起作用:{「Row 1」:「Column 2」}}。它顯示[object] [object]。也許你知道原因以及如何解決它?再次感謝 – Thomas

+0

感謝它完美的作品! – Thomas

+0

樂意幫忙。請高調回答以及 –

0

嘗試這種情況:

var resultAsString1 = JSON.stringify(survey.data.question1); 
alert(resultAsString1); 
+0

謝謝它的作品:) – Thomas