Загрузить несколько фрагментов одновременно с помощью jquery .load()
Я загружаю некоторые фрагменты с помощью jquery с помощью следующего кода
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);
(Я не хочу загружать весь.product-container сразу, потому что его часть редактируется пользователем одновременно)
но он делает 2 запроса к серверу для того же контента.
Могу ли я как-то сделать это с помощью одного запроса?
Спасибо!
1 ответ
Решение
Вы можете сделать один $.get()
и загрузите контент, куда он идет, вот так:
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"));
});
Это может выглядеть немного странно, но .html()
с объектом JQuery является ярлыком для .empty().append()
,