gpt4 book ai didi

Jquery 改变段落的值

转载 作者:行者123 更新时间:2023-12-01 08:30:14 25 4
gpt4 key购买 nike

我在更新来自 ajax 请求paragraph 值时遇到问题

<div class="comment__text" id="data">
<p>{{ node.text }}</p>
{% if user.is_authenticated %}
<div class="thumb-likes">
<p class="likes">{{ node.likes }}</p>
<i class="fa fa-thumbs-up hvr-buzz like" data-id="{{ node.id }}"></i>
<i class="fa fa-thumbs-down hvr-buzz dislike" data-value="{{ node.id }}"></i>
</div>
{% else %}
{{ node.likes }}
{% endif %}
</div>

我尝试过以下方法

$(document).on('click', '.like', function () {
$.ajax({
type: 'POST',
url: '',
data: {
'like-id': $(this).data('id')
},
success: function(response) {
$(this).closest('.thumb-likes')
.find('.likes')
.html(response['total_likes']);

}
})
});
$(document).on('click', '.dislike', function () {
$.ajax({
type: 'POST',
url: '',
data: {
'dislike-id': $(this).data('value')
},
success: function(response) {
$(this).closest('.thumb-likes')
.find('.likes')
.html(response['total_likes']);
}
})
});

该值未更新。当我尝试 $('.likes') 时,它可以工作,但所有值都会同时更新。如果我对如何遍历元素的理解不正确,请解释我到底缺少什么。

最佳答案

我想你需要将 $(this) 绑定(bind)到一个变量,以便它在 ajax 调用完成后仍然可用:

$(document).on('click', '.like', function () {
$this = $(this)
$.ajax({
type: 'POST',
url: '',
data: {
'like-id': $(this).data('id')
},
success: function(response) {
// NOTE THIS CHANGE HERE
$this.closest('.thumb-likes')
.find('.likes')
.html(response['total_likes']);
}
})
});

关于Jquery 改变段落的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61243418/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com