我正试图在我的Laravel博客上创建一个书签功能,为帖子添加书签。我在我的User.php模式中有这个功能
public function bookmark($object)
{
if($this->isBookmarked($object)) {
return $this->bookmarks()->where([
['bookmarks.post_id', $object->id]
])->delete();
}
return $this->bookmarks()->create(['post_id' => $object->id]);
}
当用户点击我书签中的这个按钮时,我似乎不知道如何触发上面的功能
<button type="submit"><i class="bi bi-bookmark-heart-fill text-2xl ml-4"></i></button>
Laravel中有类似javascript onclick函数的功能吗?
没有Laravel中没有javascript onclick函数,但您可以使用javascript onclicck事件向您的Laravel路由发出ajax请求,以触发函数
示例
<button type="submit" onclick="addBookmark({{ $blog->id }});"><i class="bi bi-bookmark-heart-fill text-2xl ml-4"></i></button>
以及js函数
function addBookmark(blogId){
$.ajax('/yourDomainAndYourRoute', {
type: 'POST',
data: { blog_id: blogId },
success: function (data, status, xhr) {
// handle the success part
},
error: function (jqXhr, textStatus, errorMessage) {
// handle the failed part
}
});
}
我希望这对有帮助