夥計們正在嘗試創建像fb一樣的喜歡和不喜歡的按鈕。我列出了我在PHP中列表循環的帖子。我只想要一個按鈕,如果喜歡設置藍色,如果不喜歡設置正常(默認)的顏色。 所有喜歡的記錄都存儲在db id | account_id | item_id |等。Jquery ajax喜歡和不喜歡按鈕
我有一個PHP的控制器,用於喜歡女巫保持2種主要方法 的addAction()和deleteAction()。第一個和第二個動作只接受ajax請求並添加和刪除數據庫中的記錄。
所以我的問題是,當我點擊一個按鈕顏色沒有改變時,Ajax完成(成功和complite)。我認爲我做得很好,但方式不對。當我點擊Like記錄被保存但活的顏色改變。我也用jQuery嘗試負載()但我只可以加載的所有帖子和後的setInterval他回到我的文章列表的頂部:/
這裏是我的這個jQuery:
// Submit post like
submitPostLike: function() {
var likes = 0;
var likeBtn = $(".like-btn");
likeBtn.click(function() {
var postId = $(this).attr("rel");
$.ajax({
type: "post",
cache: false,
url: baseurl + "/like/addAction",
data: {
item_id: postId,
},
success: function(response) {
console.log("post liked -" + postId); // debug
},
complete: function() {
$(".like-txt").css("color", "blue");
setTimeout(Post.updatePostList(), 1000);
console.log("scheduler fired"); // debug
},
error: function(response, s, e) {
alert(response.responseText);
},
});
})
},
刪除行動是一些我不會說的。
的Html女巫在PHP中
<?php if(hasLiked($post->post_id, $acc_id)): ?>
<button type="button" id="post_like_btn" rel="<?= $post->post_id;?>" class="dislike-btn btn btn-xs btn-default">
<div class="like-txt"><i class="glyphicon glyphicon-thumbs-up"></i> Like </div>
</button>
<?php else : ?>
<button type="button" id="post_dislike_btn" rel="<?= $post->post_id;?>" class="like-btn btn btn-xs btn-default">
<i class="like glyphicon glyphicon-thumbs-up"></i> Dislike
</button>
<?php endif; ?>
hasLiked()是checkig PHP函數,如果該職位已經通過該帳戶喜歡循環創建。如果帳戶存在db顯示不喜歡按鈕。
現在如何生活刷新像load()函數時,有人喜歡帖子?所有這些工作,但只有當我刷新頁面時,文本纔是藍色。
你是對的,它必須是我的一部分DOM – Ivan