【问题标题】:Using ajax and django to delete an item in for loop使用 ajax 和 django 删除 for 循环中的项目
【发布时间】:2015-10-18 09:41:33
【问题描述】:

尝试使用引导程序 × 单击并淡出来删除帖子/评论。我写了一些代码,但它不起作用。我觉得我错过了这么简单的东西。任何指导或帮助将不胜感激。 urls.py

url(r'^delete/(?P<pk>\d+)/$', views.delete, name='delete'),

views.py

@login_required
def delete(request, pk):
    warn = get_object_or_404(Warning, pk=pk)
    fop = get_object_or_404(Followers, pk=warn.person.pk)
    warn.delete()
    return redirect('yardsale.views.follower_warnings', pk=fop.pk)

模板

{% for warns in warn.warnings.all %}
                <div class="warning-list col-md-4">
                {# <a href="{% url 'delete' pk=warns.pk %}"> #}
                <button type="button" class="close">&times;</button>
                {# </a> #}
                <div class="publish-date"><strong>Warned:</strong>  {{ warns.publish_date }}</div>
                <div class="posted-by"><strong>Warned By: </strong> {{ warns.author }}</div>
            <div class="warningtype"><strong>Warning Type: </strong>{{ warns.WarningType }}</div>
            <div class="description">
                <strong>Description:</strong> {{ warns.descript }}
            </div>
            {% endfor %}

main.js

$(".close").click(function () {
  if (confirm("Are you sure you want to delete this?")){
$.ajax({
  type: "DELETE",
  url: "{% url 'delete' pk=warns.pk %}",
  beforeSend: function(xhr) {
    xhr.setRequestHeader("X-CSRFToken", getCookie("csrftoken"));
  }
  success: function() {
    var close=$(this).parent();
    close.fadeOut(1000);
     });
    }
   })
  }
 });

【问题讨论】:

    标签: javascript jquery ajax django


    【解决方案1】:

    main.js如下。

    $(".close").click(function () {
      var close=$(this).parent();
      if (confirm("Are you sure you want to delete this?")){
        $.ajax({
          type: "DELETE",
          url: $(this).data('url'),
          beforeSend: function(xhr) {
            xhr.setRequestHeader("X-CSRFToken", getCookie("csrftoken"));
          },
          success: function() {
            close.fadeOut(1000);
          }
        });
      }
    });
    

    【讨论】:

      猜你喜欢
      • 2011-01-04
      • 2021-05-21
      • 1970-01-01
      • 1970-01-01
      • 2014-06-28
      • 2014-11-13
      • 2016-10-15
      • 2013-10-08
      相关资源
      最近更新 更多