Ajax的属性
1、属性列表url: ? ? (默认: 当前页地址) 发送请求的地址。 type: ?(默认: "GET") 请求方式 ("POST" 或 "GET"), 默认为 "GET"。注意:其它 HTTP 请求方法,如 PUT 和 DELETE 也可以使用,但仅部分浏览器支持。 timeout:??设置请求超时时间(毫秒)。此设置将覆盖全局设置。 async: ??(默认: true) 默认设置下,所有请求均为异步请求。如果需要发送同步请求,请将此选项设置为 false。? beforeSend:?发送请求前可修改 XMLHttpRequest 对象的函数,如添加自定义 HTTP 头。XMLHttpRequest 对象是唯一的参数。 function (XMLHttpRequest) { this; // the options for this ajax request } function (XMLHttpRequest,textStatus) { this; // the options for this ajax request } ? ? ? ? ? ? 预期服务器返回的数据类型。如果不指定,jQuery?将自动根据 HTTP 包 MIME 信息返回 responseXML 或 responseText,并作为回调函数参数传递,可用值: ? ? ? ? ? ?"xml": 返回 XML 文档,可用?jquery?处理。 ? ? ? ? ? ?"html": 返回纯文本 HTML 信息;包含 script 元素。 ? ? ? ? ? ? "script": 返回纯文本?JavaScript?代码。不会自动缓存结果。 ? ? ? ? ? ? "json": 返回 JSON 数据 。 ? ? ? ? ? ? "jsonp":?JSONP?格式。使用?JSONP?形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。 ?processData:?(默认: true) 默认情况下,发送的数据将被转换为对象(技术上讲并非字符串) 以配合默认内容类型 "application/x-www-form-urlencoded"。如果要发送 DOM 树信息或其它不希望转换的信息,请设置为 false。 ? error:??(默认: 自动判断 (xml 或 html)) 请求失败时将调用此方法。这个方法有三个参数:XMLHttpRequest 对象,错误信息,(可能)捕获的错误对象。 function (XMLHttpRequest,textStatus,errorThrown) { // 通常情况下textStatus和errorThown只有其中一个有值 this; // the options for this ajax request } ? ? ? ? function (data,textStatus) { ? ? ? ? ? ? // data could be xmlDoc,jsonObj,html,text,etc... ? ?注意:? ? ? ? ? ? 1、success?:?当请求成功时调用的函数。这个函数会得到一个参数:从服务器返回的数据。当请求成功时调用函数,即status==200。 ? ? ? ? 3、?data主要方式有三种,html拼接的,json数组,form表单经serialize()序列化的;通过dataType指定,不指定智能判断。 ? ? ? ? 4、$.ajax只提交form以文本方式,如果异步提交包含<file>上传是传过不过去,需要使用 ? ?jquery.form.js ? 的$.ajaxSubmit ? 2、实例? ? ??1、$.ajax的一般格式$.ajax({ type: "post",url: url,dataType:‘html‘,success: function(data) { },complete: function(XMLHttpRequest,textStatus) { },error: function(){} }); ? ? ?2、文件上传,下文使用form的id进行提交数据,或者使用$.ajaxSubmit提交。? ? ?其中关键要素: ? ? ?a、contentType:(默认: "application/x-www-form-urlencoded") 发送信息至服务器时内容编码类型。默认值适合大多数情况。如果你明确地传递了一个content-type给 $.ajax(),那么他必定会发送给服务器(即使没有数据要发送) ? ? b、?processData:(默认: true) 默认情况下,都会处理转化成一个查询字符串,以配合默认内容类型。如果要发送 DOM 树信息或其它不希望转换的信息,请设置为 false。 ? ? c、FormData:?比起普通的ajax,使用FormData的最大优点就是我们可以异步上传一个二进制文件。 var uploading = true; if(uploading){ $.ajax({ url: ctx + "/xxx/upload",type: ‘POST‘,cache: false,data: new FormData($(‘#infoLogoForm‘)[0]),processData: false,contentType: false,dataType:"json",beforeSend: function(){ uploading = false; },success : function(data) { uploading = true; } }); } ? 3、引用资料:? ?https://www.cnblogs.com/jpfss/p/9479595.html ? ?https://www.cnblogs.com/henuyuxiang/p/6656001.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |