django 用ajax+post提交form 实现前后台数据绑定

首先要引入jquery文件,可以引入在线的,也可以下载离线的 添加进自己staticfiles

这里演示的是添加离线的

注意这句是要添加到自己写的ajax jquery脚本前。

然后HTML表单如下:


{% csrf_token %}//防止请求伪造


如果你在settings里边没有注释掉

'django.middleware.csrf.CsrfViewMiddleware',

你的jquery里边需要添加上这句,

$.ajaxSetup({
                 data: {csrfmiddlewaretoken: '{{ csrf_token }}' },
            });
然后整个ajax脚本,这里写的比较就简单主要突出与django的通信:


接下来写我们后端的view.py 中的后端处理函数
def comments_upload(request):
    if request.method == 'POST':
        print "it's a test"                            #用于测试
        print request.POST['input']           #测试是否能够接收到前端发来的input字段
        return HttpResponse(request.POST['input'])     #最后返会给前端的数据
    else:
        return HttpResponse("

test

")
由于有中文所以views.py 开头加上

#coding=utf8
注意:ajax POST的url页面不是接收输入的页面。。。。。。这地方我宰了第二次了。。。。。。。。也就是 comments_upload函数是POST请求的页面对应的处理函数,而我们提交请求的页面(即上面的HTML)只是用于提供输入和接收处理结果的页面,所以不能把接收处理语句写在上面的HTML中,需要将它写到comments_upload函数所在的页面。


你可能感兴趣的:(django 用ajax+post提交form 实现前后台数据绑定)