我正在使用ajax过滤器处理一个商店页面,加载更多功能,当没有应用过滤器时加载更完美,相同的过滤器工作良好,但当我单击“加载更多”时,当我删除过滤器时,它会有一点问题,显示没有数据。
加载更多按钮:
<button id="load-btn" type="submit">
<span>Load more</span>
</button>
加载更多单击的功能:
var page = 1;
var clicked = false
$("#load-btn").click( function(e) {
page++;
clicked=true;
filter();
}
);
ajax请求:
function filter() {
var url = '{{ route("front.shop.filter") }}';
var categories = [];
$(".category:checked").each(function(){
categories.push($(this).val());
console.log(categories)
});
$.ajax({
url: url,
data: {
categories:categories,
page: page
},
type: 'post',
beforeSend:function(){
$('.load-more').show(); // loader
if(!clicked){
$('#products').html('');
}
}
}).done(function(data){
setTimeout(function(){
$('.load-more-skelton').hide();
if(clicked == 1){
$('#product').append(data.view);
clicked = false;
page = 1;
} else {
$('#product').html(data.view);
}
}, 1500);
});
}
搜索控制器
public function filters(Request $request)
{
$products = Product::where('status' , 'active');
if($request->categories){
$products = $products->whereIn('category_id',$request->categories);
}
$products = $products->latest()->paginate(8);
$view = view('front.includes.view',compact('products'))->render();
return response()->json(['view' => $view]);
}
有人能帮我实现加载更多功能吗?
暂无答案!
目前还没有任何答案,快来回答吧!