J'envoie des données JSON à une fonction AJAX, c'est ce que les données ressemblent à: à l'aide de jQuery, je voudrais maintenant montrer ces données à l'intérieur d'un html fort> p> Le problème avec ce code est que cela ne montre que la première occurrence de la matrice, dans ce cas, je ne verrai que "
code> tag. Par exemple, j'aimerais avoir tout le
un, deux, ... code> d'un côté. Voici ce que j'ai essayé: p>
un code>". Quelqu'un peut-il m'aider à trouver ce que je fais mal? P> p>
3 Réponses :
Vous écrasez l'élément à chaque fois par la boucle. Vous devez concaténer toutes les clés, puis mettre cela dans l'élément.
success: function(data) { var text = Object.keys(data).join(', '); $('#test').text(text); }
Vous écrasez la clé de chaque boucle. Vous devez les ajouter à une variable puis imprimez cela. Puisque vous les voulez tous d'un côté (qui est verticalement), vous devez les séparer par des pauses de ligne et les ajouter à l'aide de html () code> au lieu de
texte () code>;
var t = '';
$.each(data, function(key, val) {
t += key + ' = ' + val + '<br/>';
});
$('#test').html(t);
Ouais en effet. Le problème est que j'écrase. J'ai besoin de faire plus de pratique avec jQuery. Merci!
$.ajax({ url: $("#container").attr("data-url"), dataType: 'json', success: function (data) { $.each(data, function(key, val) { $('#test').append(key + ', '); }); } }); Just use $('#test').append instead of $('#test').text to keep the keys added previously
C'est un objet, pas un tableau.