我有一个视图,模板嵌套在其中,最终的模板有一个带有点赞和评论按钮/锚标签的帖子。
帖子的数量不是固定的,是动态填充的,点赞和评论与单个帖子相关联。
最后一个子模板检索生成的帖子。问题出在代码片段上:
---under dynamic loop---
<a href="" class="like" data-catid="{{ post.id }}">Like</a>
---under dynamic loop---
上面的代码片段由jQuery调用:
<script>
$('.like').on("click", function (event){
event.preventDefault();
var postid = $(this).attr("data-catid");
alert(postid);
$.ajax({
.
.some Ajax stuff...
.
</script>
现在的问题是,每当我点击任何类似的帖子时,我都会收到与帖子数量一样多的警报。这是因为帖子的数量是不确定的,并且是动态生成的。因此,对于每个帖子,我都会生成一个带有“like”类的锚点标签。请指导如何在用户点击的确切链接上只获得单个事件。
如果你也想知道模型,请参考我之前的帖子:Django Dynamic Object Filtering issue in Template
发布于 2020-04-29 03:34:18
我通过将所有的jQuery内容提升一个模板级别来解决这个问题,也就是上面提到的子模板的父模板。除此之外,我必须使用CSRF Cookie获取和发送CSRF请求函数,如Django文档中所述。
https://stackoverflow.com/questions/61483288
复制相似问题