2分钟学会ajax 入门ajax必备

六月ゝ 毕业季﹏ 提交于 2019-11-27 03:20:49

声明:ajax需要有一定的HTML 和js、jsquery基础

这里是基于python3和django2.1.8实现的ajax例子

 原理图:

 

原理解释:

1.前端向后端发送ajax请求:

必须写出你要请求的地址,请求的方式,请求的数据类型,这里一般为json格式

2.django后端对前端发起的请求进行处理返回一个JsonResponse对象,数据格式为字典这里的处理函数要和1中的请求地址保持一致

3.前端执行回调函数,当获取到后端传过来的顺序之后进行最后的处理。

下面是详细步骤:

1. Html文件中引入jquery静态文件

这里静态文件的引入可以查看我以前的博客,相信大家应该都会

{% load static %}
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>

{#1.引入jquery静态文件#}
<script src="{% static 'js/jquery-1.12.4.min.js'%}"></script>

  

2. 在html中寻找ajax需要绑定事件的对象

首先我们看看测试的html文件中body中的内容

<body>
<input type="button" id="obj" value="ajax请求提交">
</body>

我们准备将这个按钮绑定给ajax

 $(function () {
        {#绑定ajax事件#}        
        $("#obj").click(function () {
            $.ajax({
                'url':'/user/ajax_handle',  #这里是请求的方法的地址
                'dataType':'json',
            }).success(function (data) {  #这里一定要传入参数data
                //进行处理\
                {#alert(data.res)#}
                if (data.res == 1){}
                alert(data.res)
            })
        })
    })

</script>

  格式如上图

我们看看view的视图函数同时各位记得配置一下路由就ok了

 

 

 问题:

  如上操作会报错403错误:

  解决方案如下:

在views.py中引入如下
from django.views.decorators.csrf import csrf_exempt,csrf_protect
如下
在views.py里定义的函数加上装饰器

@csrf_exempt
def ajax_test(request):
    return render(request,'ajax_test.html')

@csrf_exempt
def ajax_handle(request):
    return JsonResponse({'res':1}) #这样就ok了

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!