var num = parseInt($.trim($(this).text()));
$(this).html('<i class="zmdi zmdi-thumb-up" data-postid="{{ $post->id }}"></i>', ++num);
点击某个div后,计数必须上升。这实际上有效,但同时必须将一个图标添加到单击的div中。我该怎么做?上面的示例工作,但只插入了<i>
。
编辑:
dataset-postid="{{ $post->id }}"
定义了具有此按钮的post_id。需要改变的是{{ $likes}}
```
<div class="wis-numbers">
<?php $likes = $post->likes->count() ?>
<span id="like" class="like" data-toggle="tooltip" data-placement="bottom">
<i class="zmdi zmdi-thumb-up" data-postid="{{ $post->id }}"></i>
{{ $likes }}
</span>
</div>
我尝试用Jquery更新文本来解决这个问题,如下所示:
var num = parseInt($.trim($(this).text()));
$(this).text(++num);
但是这会从我的html <i class="zmdi zmdi-thumb-up" data-postid="{{ $post->id }}">
中消失所以我必须以某种方式将它包含在计数中。
这是我对这个按钮的完整AJAX / Jquery,基本上如果按钮ges点击,计数必须上升(如果不喜欢则下降)和一个“活跃”的课程。需要添加
$('.like').on('click', function(event) {
event.preventDefault();
postId = event.target.dataset['postid'];
if($(this).hasClass('active')) {
$(this).removeClass("active");
$.ajax({
method: 'POST',
url: urlLike,
data: { postId: postId, _token: token },
});
console.log('unlike');
} else {
$(this).addClass("active");
$.ajax({
method: 'POST',
url: urlLike,
data: { postId: postId, _token: token },
});
console.log('like');
}