caricare diversi frammenti in una volta con jquery .load ()
-
10-10-2019 - |
Domanda
sto caricando alcuni frammenti con jQuery con seguente codice
var box = $(this).closest(".product-contain").children(".title:first");
box.load(url + " .maintitle", data);
var box = $(this).closest(".product-contain").children(".detail:first");
box.load(url + " .alldetail", data);
(non voglio caricare tutta .product-contenere in una sola volta, perché una parte di essa è in fase di modifica da parte dell'utente nello stesso momento)
ma fa 2 richieste al server per lo stesso contenuto.
Posso in qualche modo farlo con una richiesta?
grazie!
Soluzione
Si può fare una $.get()
e caricare i contenuti dove va da soli, in questo modo:
var pc = $(this).closest(".product-contain");
$.get(url, data, function(html) {
var resp = $(html);
pc.children(".title:first").html(resp.find(".maintitle"));
pc.children(".detail:first").html(resp.find(".alldetail"));
});
Questo può sembrare un po 'strano, ma .html()
con un oggetto jQuery è una scorciatoia per .empty().append()
.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow