J'essaye de créer quelques divs avec la boucle for. J'utilise les méthodes .append() et .clone mais l'ordre de div est faux. Même lorsque j'ai créé div before loop, dans index.html, le premier div (class news0) est généré après le dernier div (class news3) qui devrait être le dernier. Comment puis-je resoudre ceci?Utiliser append, cloner dans la boucle jquery
$news.ready(function() {
var query = [];
console.log(query);
$.ajax({
url: baseUri + "news",
data: {q: query},
success: showNews
});
return false;
});
function showNews(response) {
var news = response[0];
console.log(news);
$news.append($div);
$div.attr('class', 'news' + 0);
$div.append($h1);
$div.append($h2);
$div.append($h3);
$div.append($p);
$h1.html(news.title);
$h2.html(news.author);
$h3.html(news.date);
$p.html(news.body);
for (var i = 1; i < response.length; i++) {
news = response[i];
$news.append($div.clone());
$div.attr('class', 'news' + i);
$div.append($h1);
$div.append($h2);
$div.append($h3);
$div.append($p);
$h1.html(news.title);
$h2.html(news.author);
$h3.html(news.date);
$p.html(news.body);
}
}
Cela ne sovle pas le problème. Maintenant j'ai 4 divs mais le premier est vide. – pawell67
J'ai mis à jour le code, je pense que cela devrait aider –
Malheureusement, l'ordre des divs est de nouveau 3 - 0 - 1 - 2. – pawell67