Ajax调用在Django中不起作用?

时间:2017-06-06 02:41:35

标签: jquery ajax django

这是我的ajax电话:

<script>
    $(document).ready(function(){
        $("#butt2").click(function(){
            $.ajax({
                url:'{% url 'task:deletetask' %}',
                data:{'id':2 },
                type:"GET",
                success:function(text){
                    $("#task2").hide();             
                    alert(text);
            }});
        });
    });


</script>

这是我的观点功能:

class DeleteTaskView(generic.View):
    def get(self,request):
        id = request.GET.get('id',None)
        Task.objects.get(id=id).delete()
        return JsonResponse("Task Removed")

这是网址:

url(r'user/task/delete/$',views.DeleteTaskView.as_view(),name='deletetask'),

如果我删除了ajax调用,只是添加了alert函数,那么它正常工作,意味着jquery正在工作,只有ajax调用有问题。帮助!

编辑:我将网址功能更改为:

url : "{% url 'task:deletetask' %}",

现在该项目已从数据库中删除,但成功响应隐藏和警报功能无效。

2 个答案:

答案 0 :(得分:0)

  1. 确保JS重新加载。
  2. 尝试测试网址(使用完整链接)
  3. 打开Broswer并按F12~&gt;控制台并告诉我错误...服务器或客户端错误?

答案 1 :(得分:0)

默认情况下,

JsonResponse只能获取数据的dict参数。

所以你应该:

return JsonResponse({'text': 'Task Removed'})