微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Django ajax的概念和基于ajax的form表单上传

ajax常见的参数

type: "post",
contentType: "application/json; charset=utf-8",//请求时候的传参类型
dataType: "json",          //返回值类型
url: "ajax/getData",       发送请求的地址  认为当前页地址
data:JSON.stringify(json),
timeout:80                  //要求为Number类型的参数,设置请求超时时间(毫秒)。此设置将覆盖$.ajaxSetup()方法的全局设置。
async: True  //认设置为true,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为false。注意,同步请求将锁住浏览器,用户其他操作必      
             //须等待请求完成才可以执行
success: function(data){   //成功回调函数
    console.log(data);
},
error : function(msg) {    //错误回调函数
    console.log(msg);

ajax接受的数据类型 ContentType

ContentType:application/x-www-form-urlencoded :

认的encType,form表单数据被编码为key/value格式发送到服务器
(表单认的提交数据的格式)认的是urlencoded编码格式 对应的form表单的enctype是multipart/form-data 用来上传文件 用request.FILES获取对象

ContentType:urlencode 对应的form表单的enctype是application/x-www-form-urlencoded 请求体内容为(a=1&b=2&c=3),也会按照这种url的构
成形式进行解码, request.POST和request.BODY都可以取到值,
只不过request.POST按照url的格式解析成了字典格式,而request.BODY解析的是a=1&b=2的字符串
ContentType:application/json 对应的json字符串 用request.body获取请求体内容
ContentType:application/xhtml+xml :XHTML格式
ContentType:application/xml : XML数据格式
ContentType:application/atom+xml :Atom XML聚合格式
ContentType:application/json : JSON数据格式
ContentType:application/pdf :pdf格式
ContentType:application/msword : Word文档格式
ContentType:application/octet-stream : 二进制流数据(如常见的文件下载)

基于ajax实现的账号密码校验

基于Form表单实现的文件上传

form的action 如果加aaa/ 那么发送请求的网址是:当前url/aaa/ 如果加/aaa/ 那么当前网址会被覆盖请求的url是:/aaa/

基于ajax实现form标签文件上传

如果用ajax实现上传,需要加入下面2个参数
contentType:false, //其代表的是 前端发送数据的格式,设置false表示禁用数据格式转换
processData:false,   //认情况下,processData 的值是 true,其代表以对象的形式上传的数据都会被转换为字符串的形式上传。而当上传文件的时候,则不需要把其转换为字符串,因此要改成false

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

相关推荐