var callback = function(data) {
$.ajax({
url: '/vote/',
type: 'post',
data: {
id: data.id,
up: data.upvoted,
down: data.downvoted,
star: data.starred
}
});
};
$('.upvote').upvote({id: /how to send id of upvoted div here/, callback: callback});
我的 django 模板代码是:
<div id="topic-{{object.id}}" class="upvote">
<a class="upvote"></a>
<span class="count">{{object.upvotes|sub:object.downvotes}}</span>
<a class="downvote"></a>
<a class="star"></a>
</div>
我可以从div的id属性中提取数字部分。我只是想知道如何在ajax调用的upvote函数中发送id。
我正在使用Upvote .
最佳答案
如果您想发送单击的 div
的 id,您可以设置 data-id
属性,如下所示:
<div data-id="123">...</div>
如果 dom 中没有这样的属性,则该值将保持未定义。因此,在您的情况下,您需要将 div 设置为如下所示:
<div data-id="topic-{{object.id}}" class="upvote">
设置data-id
后,您可以从选项对象中省略id
:
$('.upvote').upvote({callback: callback});
关于javascript - 如何在jquery upvote插件函数的参数中发送元素id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41948221/