Django ajax post 403 问题

方法一:

在发送post请求的html页面前加入{% csrf_token %}

方法二:

在处理post数据的view前加@csrf_exempt装饰符

例如

[python] view plain copy
@csrf_exempt  
def profile_delte(request):   
  del_file=request.POST.get("delete_file",'')  

同时在进行项目时遇到以下问题及解决方案:

因需求在下拉框中绑定了change事件,只有select一改变,则exam_name中会自动填充相应的内容。同时点击 + 可以动态的添加option标签并被选中,问题在于 + 事件中的$("ele").trigger("change")并未触发select的change事件???

问题所在:因 + 事件是基于Django事件中的js,它是基于Django中的jquery.js文件,

$(function(){
    $("#exam").on('change',function(){
           XXXXXXX
    });
})(django.jQuery)

  而select的change事件是基于项目中引入的jquery.js文件,

$(function(){
     $("#exam").on('change',function(){
             XXXXXXXXXXXX
     })        
})

  所以$("ele").trigger("change")无法触发select的change事件。

解决方案:将select的change事件修改为基于Django中的jquery.js,这样就可以了!

posted @ 2017-12-15 14:10  Christal_11  阅读(141)  评论(0编辑  收藏  举报