如果我单击“喜欢”或“不同”按钮,它将发送数据并按预期工作,但是问题是单击后直到我刷新页面后,它不会立即更改按钮。例如。当我单击“赞”按钮时,它应该更改为“与众不同”,我没有在控制台中看到错误,我看到了一些与此类似的问题,但是它们并没有解决我的问题。任何帮助将不胜感激。
JavaScript
function addToFavourites(productid,userid) {
$.ajaxSetup({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
}
});
$.ajax({
method: 'post',url: `/product/like/${productid}`,data: {
'user_id': userid,'product_id': productid,},success: function () {
// hide add button
console.log($('#addfavourites' + productid));
$('#addfavourites' + productid).show();
// show delete button
$('#deletefavourite' + productid).show();
},error: function (XMLHttpRequest) {
// handle error
}
});
}
// Unlike product
function deleteFromFavourites(productid,url: `product/${productid}/unlike`,error: function (XMLHttpRequest) {
// handle error
}
});
}
刀片文件
@if($product->isLiked)
<div id="deletefavourite{{$product->id}}"onClick="deleteFromFavourites({{$product->id}},{{ Auth::user()->id }})"> unlike </div>
@else
<div id="addfavourites{{$product->id}}" onClick="addToFavourites({{$product->id}},{{ Auth::user()->id }})" > like </div>
@endif