/ / JSON Affichage d'une réponse particulière - jquery, json

JSON Affichage d'une réponse particulière - jquery, json

Je voudrais alerter () différentes réponses en JSONd'une enquête. Je peux afficher tout le contenu mais j'ai quelques difficultés à n'afficher que les réponses sélectionnées. Comme il s'agit d'une enquête, les réponses changent à chaque fois. Voici mon code:

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

Et voici ce que j'obtiens dans l'alerte

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

Je voudrais alerter () uniquement les réponses séparément (ie item4; ["faire", "lion", "elephant"]; {"Row 1": "Column 2"}) J'ai essayé le code ci-dessous mais rien n'est affiché. Pourriez-vous m'aider s'il vous plait.

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

Réponses:

0 pour la réponse № 1

Vous chaînez le JSON puis y accédez comme un objet avec une paire clé / valeur. Veuillez le faire comme ça

var result = survey.data;

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

De toute évidence, vous allez avoir plus de réponses aux questions dans ce tableau avec le temps, donc accéder à chaque question séparément ne peut pas être une bonne solution.

Essaye ça.

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 pour la réponse № 2

Essaye ça:

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