Je fais un appel jquery .ajax et j'attends un résultat json. La capture est, s'il y a 5 auteurs, je vais obtenir author_details_0, author_details_1, author_details_2, etc .... Comment puis-je construire dynamiquement le nom de la variable à récupérer à partir de json? Je ne sais pas combien d'auteurs j'aurai, il pourrait y en avoir des centaines.Génération de nom de variable dynamique Jquery Json
$.ajax({
type: "POST",
url: "/authordetails/show_my_details/",
data: af_pTempString,
dataType: "json",
beforeSend: function() {
},
success: function(jsonData) {
console.log("Incoming from backend : " + jsonData.toSource());
if(jsonData.AuthorCount)
{
console.log("Number of Authors : " + jsonData.AuthorCount);
for (i = 0; i < jsonData.AuthorCount; i++)
{
temp = 'author_details_' + i; <-------------------This is the name of the variable I'm expecting.
console.log("Farm information : " + eval(jsonData.temp)); <----- This doesn't work, how can I get jsonData.author_details_2 for example, 'coz I don't know how many authors are there, there could be hundreds.
}
}
S'il vous plaît laissez-moi savoir si vous avez une idée comment résoudre ce problème! Très apprécié.
pourquoi avez-vous besoin author_details_0, 1, 2, etc? – yoda
Comment générez-vous le json? – Eric
J'utilise dJango au backend. Le modèle de données que j'ai créé contient la table Author & related Author_Details. Étant donné un identifiant d'éditeur, j'interroge et j'obtiens l'ensemble d'auteurs que je simplifie simplement: json_serializer.serialize (allAuthors, ensure_ascii = False). Cela ne sérialise pas les détails de l'auteur, donc je dois faire une boucle par l'auteur tableau d'objets et de les créer manuellement, donc author_details_XX où XX est la clé primaire de l'auteur. Je ne suis pas sûr s'il existe un moyen de regrouper un auteur et d'autres détails qu'il a comme un seul objet JSON Array. S'il y a, je serais heureux de moderniser mon code, car il est plus propre. – PlanetUnknown