Django回顾 - 6 Ajax

【1】Ajax

定义:

异步Javscript和XML

作用:

Javascript语言与服务器(django)进行异步交互,传输的数据为XML(当然,传输的数据不只是XML,现在更多使用json数据)

同步交互和异步交互:

1、同步交互:js发送出请求---》直到请求回来---》页面不能操作,不能点击

2、异步交互:js发出请求---》等待请求回来的过程中--->页面可以随意继续操作

【1.1】Ajax使用

4 、使用:使用了jquery帮咱们封装的方法 ajax ,名字跟ajax相同 -------- $.ajax

5、真正的ajax原生,需要使用js操作,jq的ajax方法是对原生js的封装,方便咱们使用

-前后端混合项目中,我们通常使用jquery的ajax实现 js和后端异步交互

-jquery操作DOM

-jquery发ajax请求

-前后端分离项目中,我们会使用另一个第三方库(axios),实现 js和后端异步交互

-只想发送ajax请求---》只用来发ajax请求的库

【1.2】编码格式

  • 默认编码格式
    • urlencode
  • 文件上传编码格式
    • form-data
  • json编码格式
    • application/json

【1.3】Ajax上传文件

html 复制代码
<input type='file' name='my_file' id="files"> 

<button id="id_btn">提交</button>

$('#id_btn').click(function(){
    var formdata = new FormData()
    formdata.append('files',$('#files')[0].files[0])
    $.ajax({
        url:'',
        type:'post',
        data:formdata,
        contentType:false, //告诉jQuery不要去处理发送的数据
        processData:false, // 告诉jQuery不要去设置Content-Type请求头
        success:function(){
            
        }
    })
})

'''
Ajax上传文件格式的数据必须使用FormData函数,因为文件上传的编码格式为form-data

contentType设置为false
processData设置为false

'''

【1.4】Ajax上传json格式的数据

python 复制代码
	      $.ajax({
            url: '/demo01/',
            method: 'post',
            contentType: 'application/json',
            data: JSON.stringify({name: 'lqz', age: 19}), // 把对象转成字符串形式,json格式字符串
            success: function (data) {
                console.log(data)
            }
        })

【1.5】Ajax执行流程图

相关推荐
高级程序源7 小时前
django校园寻物通失物招领平台32261-计算机课程设计、毕业设计
vue.js·python·mysql·小程序·django·flask·课程设计
WeiXin_DZbishe7 小时前
基于springboot宠物领养系统-计算机毕设 附源码【课程设计】94217
vue.js·spring boot·python·django·php·课程设计
Wx-bishekaifayuan9 小时前
springboot汉中旅游服务平台41442-计算机课程设计、毕业设计
spring boot·后端·python·django·课程设计·express·旅游
Wang's Blog14 小时前
Java 中间件之 RabbitMQ 快速入门: SpringAMQP 消息转换器
java·中间件·java-rabbitmq
高级程序源18 小时前
springboot社区旧物回收管理系统25381-计算机课程设计、毕业设计
vue.js·spring boot·python·django·课程设计
高级程序源18 小时前
springboot大学生体测系统72170-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·python·django·课程设计
计算机编程指导师19 小时前
计算机毕设选题推荐:基于Spark+Django的黄金价格历史数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·python·计算机·spark·django·课程设计·黄金价格
计算机编程指导师19 小时前
计算机毕设怎么做?基于Spark+Django的股票数据分析与可视化系统实战指导 源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习
大数据·python·spark·django·毕业设计·股票·课程设计
高级程序源19 小时前
django房屋租赁系统28636-计算机课程设计、毕业设计
python·mysql·elasticsearch·小程序·django·flask·课程设计
Wang's Blog20 小时前
Java 中间件之 RabbitMQ 快速入门: SpringAMQP WorkQueue 工作队列模型
java·中间件·java-rabbitmq