jQuery(八)、ajax
博客已迁移到CSDN《https://blog.csdn.net/qq_33375499》
1、jQuery.ajax(url[, settings])
通过HTTP请求加载远程数据。
注意:所有的settings选择都可以通过$.ajaxSetup()函数来全局指定。
回调函数
在实际开发中,当我们需要处理$.ajax() 得到的数据,就需要使用到回调函数。
(1) beforeSend:在发送请求之前调用,并且传入一个 XMLHttpRequest 作为参数。
(2) error:在发送请求出差时调用。传入 XMLHttpRequest 对象、描述错误类型的字符串以及一个异常对象。
(3) dataFilter:在请求成功之后调用。传入返回的数据以及 'dataType'参数的值。并且必须返回新的数据传递给success回调函数。
(4) success:请求发送成功,后台返回数据调用。
(5) complete:在请求完成之后调用,无论成功或失败。出入 XMLHttpRequest 对象,以及包含成功或失败代码的字符串。
settings选项
1 async Boolean
默认为true,表示所有请求均为异步请求。如果要发送同步请求,将该属性设置为false。
2 beforeSend(XHR) function
function (XMLHttpRequest) {
this; // 调用本次AJAX请求时传递的options参数
}
3 cache Boolean
默认为true,dataType为script和jsonp时默认为false,jQuery1.2新功能,设置为false将不缓存此页面。
4 complete(XHT, TS) function
function (XMLHttpRequest, textStatus) {
this; // 调用本次AJAX请求时传递的options参数
}
5 contents Map
一个以"{字符串:正则表达式}"配对的对象,用来确定jQuery将如何解析响应,给定内容类型。
6 contentType String
默认为"application/x-www-form-urlencoded",发送信息至服务器时的内容编码类型。
7 context Object
这个对象用于设置ajax相关回调函数的上下文。即让回调函数内的 this 关键字指向这个对象(如果不设置这个参数,this将指向本次ajax请求时传递的options参数)。比如指定一个DOM元素作为context参数,回调函数的this 就指向这个 DOM元素。
8 converters Map
默认为 {"* text":window.String, "text html":true, "text json":jQuery.parseJSON, "text xml":jQuery.parseXML},表示对一个数据类型进行转换。每个转换器的值是一个函数,返回相应的转化值。
9 crossDomain Map
默认false,表示同域请求。如你想强制跨域请求(如JSONP形式),设置为false,是服务端重定向到另一域。
10 data Object, String
发送到服务器的数据。将自动转换为请求字符串格式。可以为字符串,如"&key1=val1&key2=val2",也可以是一个json对象。
11 dataFilter function
给ajax返回的原始数据进行相应的处理。提供data和type两个参数:data是返回的原始数据,type是调用jQuery.ajax时提供的dataType参数。
function (data, type) {
// 对Ajax返回的原始数据进行预处理
return data // 返回处理后的数据
}
12 dataType String
设置服务器返回的数据类型。如果不指定,jQuery将自动根据HTTP包MIME信息来智能判断,比如XML MIME就被识别为XML。可用值:
xml:返回XML文档。
html:返回纯文本HTML信息。
script:返回纯文本JavaScript代码。不会自动缓存结果,除非设置了cache参数。
json:返回JSON格式数据。
jsonp:返回JSONP格式。
text:返回纯文本字符串。
13 error function
function (XMLHttpRequest, textStatus, errorThrown) {
// 通常 textStatus 和 errorThrown 之中只有一个会包含信息
this; // 调用本次AJAX请求时传递的options参数
}
14 global function
默认为true,触发全局ajax时间。如果设置为false,将不会触发全局ajax时间,如ajaxStart 或 ajaxStop可用于控制不用的 ajax事件。
15 headers Map
默认为 {} 。以 key:value 的形式设置请求头信息。
16 mimeType String
一个mime类型,用来覆盖XMLHttpRquest 的 MIME类型。
17 password String
用于响应HTTP访问认证请求的密码。
18 processData Boolean
默认为true,表示通过data选项传递进来的数据,如果是一个对象,都会转换成一个查询字符串,以配合默认内容类型 "application/x-www-form-urlencoded"。如果要发送DOM 树信息或其他不希望转换的信息(如使用ajax上传文件),请设置为false。
19 statusCode Map
默认为 {} ,一组数字的HTTP代码和函数对象,当相应时调用了相应的代码。
// 如果响应状态是404,将触发以下警报:
$.ajax({
statusCode: {404: function() {
alert('page not found');
}
});
20 success(data, textStatus)
21 timeout Number
设置请求超时时间(毫秒)。此设置会覆盖全局设置$/ajaxSetup()
22 type String
请求方式,默认为GET
23 url String
发送请求的地址。
24 username String
用于响应HTTP访问认证请求的用户名。
2、load(url[, data][, callback])
载入远程HTML文件代码并插入至DOM中。
默认使用GET繁琐,传递data参数自动转换为POST方式。
参数:
(1) url:带装入HTML网页地址。
(2) data:发送至服务器的key/value数据。
(3) callback:载入成功时回调函数。
3、jQuery.get(url[, data][, callback][, type])
通过远程HTTP GET 请求载入信息。
这是这个简单的GET请求功能以取代复杂 $.ajax。请求成功时可回调函数,如果需要咋出错时执行函数,请使用$.ajax。
参数:
(1) type:返回内容格式,xml、html、script、json、text、_default。
4、jQuery.getJSON(url[, data][, callback])
通过HTTP GET请求载入JSON数据。
5、jQuery.getScript(url[, callback])
通过HTTP GET请求载入并执行一个JavaScript文件。
参数:
(1) url:带装入js文件地址。
(2) callback:载入成功时回调函数。
6、jQuery.post(url[, data][, callback][, type])
通过远程HTTP POST请求载入信息。
这是这个简单的POST请求功能以取代复杂 $.ajax。请求成功时可回调函数,如果需要咋出错时执行函数,请使用$.ajax。
参数:
(1) type:返回内容格式,xml、html、script、json、text、_default。
7、jQuery.ajaxSetup([options])
设置全局AJAX默认选项。参数参考'$.ajax' settings。
$.ajaxSetup({
url: "/xxx",
type: "POST"
});
$.ajax({ data: myData });
8、serializeArray()
序列化表格元素返回JSON数据结构数据。
返回JSON数组对象,其中每个对象包含一个或两个名值对——name参数和value参数。如:
[
{name: 'firstname', value: 'Hello'},
{name: 'lastname', value: 'World'},
{name: 'alias'}, // this one was empty
]
jQuery(八)、ajax的更多相关文章
- 第一百八十五节,jQuery,Ajax 表单插件
jQuery,Ajax 表单插件 学习要点: 1.核心方法 2.option 参数 3.工具方法 传统的表单提交,需要多次跳转页面,极大的消耗资源也缺乏良好的用户体验.而这款 form.js 表单的 ...
- jQuery整理笔记八----jQuery的Ajax
Ajax,我一直读的是"阿贾克斯",据当时大学老师讲该读音出处是依据当年风靡欧洲的荷兰足球俱乐部阿贾克斯的名字来的,我认为说法挺靠谱的. jQuery封装了Ajax的交互过程,用户 ...
- 从零开始学习jQuery (六) AJAX快餐
一.摘要 本系列文章将带您进入jQuery的精彩世界, 其中有很多作者具体的使用经验和解决方案, 即使你会使用jQuery也能在阅读中发现些许秘籍. 本篇文章讲解如何使用jQuery方便快捷的实现A ...
- jQuery之ajax实现篇
jQuery的ajax方法非常好用,这么好的东西,你想拥有一个属于自己的ajax么?接下来,我们来自己做一个简单的ajax吧. 实现功能 由于jq中的ajax方法是用了内置的deferred模块,是P ...
- 【原创经验分享】JQuery(Ajax)调用WCF服务
最近在学习这个WCF,由于刚开始学 不久,发现网上的一些WCF教程都比较简单,感觉功能跟WebService没什么特别大的区别,但是看网上的介绍,就说WCF比WebService牛逼多少多少,反正我刚 ...
- jQuery版AJAX简易封装
开发过程中,AJAX的应用应该说非常频繁,当然,jQuery的AJAX函数已经非常好用,但是小编还是稍微整理下,方便不同需求下,可以简化输入参数,下面是实例代码: $(function(){ /** ...
- JS原生ajax与Jquery插件ajax深入学习
序言: 近来随着项目的上线实施,稍微有点空闲,闲暇之时偶然发现之前写的关于javascript原生xmlHttpRequest ajax方法以及后来jquery插件ajax方法,于是就行了一些总结,因 ...
- 重写jquery的ajax方法
//首先备份下jquery的ajax方法 var _ajax=$.ajax; //重写jquery的ajax方法 $.ajax=function(opt){ //备份opt中error和success ...
- Jquery通过Ajax方式来提交Form表单
今天刚好看到Jquery的ajax提交数据到服务器的方法,原文是: 保存数据到服务器,成功时显示信息. jQuery 代码: $.ajax({ type: "POST", url: ...
- 对jquery的ajax进行二次封装以及ajax缓存代理组件:AjaxCache
虽然jquery的较新的api已经很好用了, 但是在实际工作还是有做二次封装的必要,好处有:1,二次封装后的API更加简洁,更符合个人的使用习惯:2,可以对ajax操作做一些统一处理,比如追加随机数或 ...
随机推荐
- 实战经验丨CTF中文件包含的技巧总结
站在巨人的肩头才会看见更远的世界,这是一篇技术牛人对CTF比赛中文件包含的内容总结,主要是对一些包含点的原理和特征进行归纳分析,并结合实际的例子来讲解如何绕过,全面细致,通俗易懂,掌握这个新技能定会让 ...
- 从壹开始微服务 [ DDD ] 之终篇 ║当事件溯源 遇上 粉丝活动
回首 哈喽~大家好,时间过的真快,关于DDD领域驱动设计的讲解基本就差不多了,本来想着周四再开一篇,感觉没有太多的内容了,剩下的一个就是验证的问题,就和之前的JWT很类似,就不打开一个章节了,而且这个 ...
- BeetleX和Asp.net Core之webapi基础性能对比
本文主要针对BeetleX和Asp.net Core在基础WebApi功能性能对比 测试环境描述 硬件配置:E1230V2 16G内存 10Gb带宽 操作系统:Windows server 2008 ...
- Asp.Net Core对接钉钉群机器人
钉钉作为企业办公越来越常用的软件,对于企业内部自研系统提供接口支持,以此来打通多平台下的数据,本次先使用最简单的钉钉群机器人完成多种形式的消息推送,参考钉钉开发文档中自定义机器人环节,此次尝试所花的时 ...
- 你用.NET开发APP时,在云平台打包APP要填个“包名”的含义
ios 在ios平台,包名有它专有的名词:bundle ID.bundle ID可以翻译成包ID,也可以叫APP ID或者应用ID,他是每一个ios应用的全球唯一标识,只要bundle id不变,无论 ...
- VS2017、VS2019没有Setup安装项目(Visual Studio Installer)_解决方案
前言: VS2010中有一个自带的安装部署项目,叫:Visual Studio Installer ,我们通常称为:setup项目,是一个用于自定义安装部署的项目方案.但是在VS2017,VS2019 ...
- 一般处理程序,将nvarchar值转换成数据类型int时失败
系统:WIndows 10 工具:Visual Studio 2017 在写代码的过程中,我遇到了这样的一个问题.如图 vs错误提示是在SqlHelper中有错,可是怎么改都不能解决问题. 最后发现是 ...
- 基于ArcGISServer进行分页矢量查询的方案进阶
文章版权由作者李晓晖和博客园共有,若转载请于明显处标明出处:http://www.cnblogs.com/naaoveGIS/ 1. 背景 在空间查询中,我们对查询结果要求以分页形式进行展示.G ...
- iOS----------has copy command from(bug修复)
:-1: Multiple commands produce '/Users/apple/Library/Developer/Xcode/DerivedData/Pic-frfhvoheijeiybf ...
- kodi18.1设置中文的方法
默认情况下,新安装好的 Kodi 启动后是英文版的界面.但事实上,Kodi 包含多国语言 (包含简繁体中文版),我们可以设置改回简体中文界面.不过,很多人都遇到修改 Kodi 的语言为中文之后整个界面 ...