是否可以简化此通话?
$('.tag-widget a').click(event => {
event.preventDefault()
$('.products-grid').load(`${event.target.href} .products-grid`)
$('.pagination-cubic').load(`${event.target.href} .pagination-cubic`)
})
基本上,当我单击.tag-widget下的链接时,我希望将.pagination-cubic和.products-grid中的内容加载到其各自的div中。
上面的代码对我有用,但是它进行了两次调用,这影响了加载时间。我可以将它们合并为1吗?
我在下面的代码中尝试了此方法,但是发生了什么情况。.products-grid加载到了.pagination-cubic和.products-grid中。
jQuery(document).ready(function ($) {
$('.tag-widget a').click(event => {
event.preventDefault()
$('.products-grid, .pagination-cubic').load(`${event.target.href} .products-grid, .pagination-cubic`)
})
});
P / s:在论坛上搜索,我只找到了将2个内容仅插入1个div的方法。
答案 0 :(得分:1)
它大致相当于
$.get(url, data, success)
...
因此,您应该可以执行以下操作:
$.get(event.target.href, function(resp) {
var resp = $(resp);
$('.products-grid').html(resp.find('.products-grid').html());
if (resp.find('.pagination-cubic').length > 0) {
$('.pagination-cubic').html(resp.find('.pagination-cubic').html());
} else {
$('.pagination-cubic').html('');
}
});
这将提取一次内容,然后设置适当选择器的HTML内容。