使用SIMPLE javascript确认Django中的删除

时间:2014-08-15 15:40:44

标签: javascript jquery python django

我知道这个问题有其他版本,但我发布这个问题,因为它们都没有提供我想要的内容。

我想要的只是

  • 用户点击“删除”
  • 用户获取JS确认对话框
    • 如果是
      • 继续删除
    • 如果没有
      • 什么都不做

我正在使用Django的通用DeleteView

class CommentDelete(DeleteView):
    model = Comment
    success_url = 'index.html'
    template_name = 'index.html'

    @method_decorator(login_required)
    def dispatch(self, *args, **kwargs):
        return super(CommentDelete, self).dispatch(*args, **kwargs)


    def get_object(self, *args, **kwargs):
        obj = super(CommentDelete, self).get_object(*args, **kwargs)
        if not obj.owner == self.request.user:
            raise Http404
        return obj

我的删除按钮如下所示

<h2><a href="comment/{{ cmt.id }}/delete" class="cmt_del">
    Delete
</a></h2>

- EDIT-- 我设法得到了对话但不知道接下来该做什么。

在确认对话框中单击“是”时,如何删除特定注释?

2 个答案:

答案 0 :(得分:2)

如何添加自定义数据属性以便于访问?

[HTML]
<a href="comment/{{ cmt.id }}/delete" class="cmt_del" data-confirm="true">
    Delete
</a>

[jQuery]
$('*[data-confirm="true"]').on('click', function() {
    return confirm("Are you sure?");
});

答案 1 :(得分:1)

您应该阻止点击按钮上的默认操作

$(document).ready(function(){
    $('.cmt_del').click(function(e){
        e.preventDefault();
        var a = confirm('Sure?');
        if(a){}
        else if(!a){}
    });
});