Django组件之Ajax请求

导读:本篇文章讲解 Django组件之Ajax请求,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

Django组件之Ajax请求

一、定义

'异步提交 局部刷新'
Ajax不是一门新的技术并且有很多版本 
学习用的是jQuery版本
版本无所谓本质一样就可以

二、基本语法

$.ajax({
    url:'',  // 后端地址 三种填写方式 与form标签的action一致
    type:'post',  // 请求方式 默认是get
    data:{'v1':v1Val, 'v2':v2Val},  // 发送的数据
    success:function(){  // 后端返回结构之后自动触发 args接受后端返回的数据
        $('#d3').val(args)
    }
})

三、Content_Type

1.urlencoded
	ajax默认的编码格式、form表单默认也是
	数据格式  xxx=yyy&uuu=ooo&aaa=kkk
 	django后端会自动处理到request.POST中
    
2.formdata
	django后端针对普通的键值对还是处理到request.POST中 但是针对文件会处理到request.FILES中
	
    
3.application/json
	form表单不支持 ajax可以
	<script>
    $('#d1').click(function () {
        $.ajax({
            url:'',
            type:'post',
            data:JSON.stringify({'name':'jason','age':18}),  // 数据要符合指定的类型 要言行一致哦
            contentType:'application/json',
            success:function (args) {
                alert(args)
            }

        })
    })
</script>
	后端需要从request.body中获取并自己处理

四、Ajax携带文件数据

<script>
    $('#d3').click(function () {
        // 1.先产生一个FormData对象
        let myFormDataObj = new FormData();
        // 2.往该对象中添加普通数据
        myFormDataObj.append('name', 'jason');
        myFormDataObj.append('age', 18);
        // 3.往该对象中添加文件数据
        myFormDataObj.append('file', $('#d2')[0].files[0])
        // 4.发送ajax请求
        $.ajax({
            url:'',
            type:'post',
            data:myFormDataObj,

            // ajax发送文件固定的两个配置
            contentType:false,
            processData:false,
            success:function (args){
                alert(args)
            }

        })
    })
</script>

五、Ajax补充说明

主要是针对回调函数args接收到的响应数据

1.后端request.is_ajax()  # 用于判断当前请求是否由ajax发出
2.后端返回的三板斧都会被args接收不再影响整个浏览器页面
3.选择使用ajax做前后端交互的时候 后端一般返回的都是字典数据
	user_dict = {'code': 10000, 'username': '小阳人', 'hobby': '哎呦喂~'}
 
ajax自动反序列化后端的json格式的bytes类型数据
	dataType:'json',

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/69981.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!