django ajax表单提交以查看而不刷新页面

时间:2019-01-25 01:05:55

标签: python ajax django forms submit

要实现非刷新效果,我决定使用 $。post() 但是,我还需要发送csrf令牌,因此,我不能仅发送表单的输入内容。 这是我在.js上的代码,但是JSON.stringify($(this))给了我在views.py后端不需要的东西。

.js

$('#my-form').submit(function(e){
    e.preventDefault();
    url=$(this).attr('action');
    data=JSON.stringify($(this))
    $.post(url,{'data':data,'csrfmiddlewaretoken':$( "#csrfmiddlewaretoken" ).val()},function(data_returned){
        alert('submit done');
    });
});

以我的观点。py

print("data:"+json.loads(str(request.POST['data'])))

这给了我类似的东西

  

{“ 0”:{“ 0”:{},“ 1”:{},“ 2”:{“ 0”:{},“ 1”:{},“ 2”:{}}, “ 3”:{},“ 4”:{},“ 5”:{},“ 6”:{},“ 7”:{},“ 8”:{},“ 9”:{},“ 10“:{},” jQuery112402971640175601502“:28},” context“:{” 0“:{},” 1“:{},” 2“:{” 0“:{},” 1“:{} ,“ 2”:{}},“ 3”:{},“ 4”:{},“ 5”:{},“ 6”:{},“ 7”:{},“ 8”:{} ,“ 9”:{},“   10“:{},” jQuery112402971640175601502“:28},” length“:1}

有什么建议吗?谢谢!

0 个答案:

没有答案