jquery的ajax请求全面了解


Posted in Javascript onMarch 20, 2013

jquery中封装了一些ajax请求的方法,很实用。

比如
.ajaxComplete()——请求完成时
.ajaxError()——请求失败时
.ajaxSend()——在Ajax请求发送时附加一个function去执行
.ajaxStart()——请求开始时,
.ajaxStop()——请求结束时
.ajaxSuccess()——请求成功时
.load()——从服务端加载数据并将返回的HTML替换到选择的元素中
jQuery.post()——使用HTTP POST请求加载服务端数据
.serialize()——将form元素集编码成一个字符串以便提交
.serializeArray()——将form元素集编码成一个键值对数组
jQuery.param()——创建一个序列化的数组或对象,使得适用于一个URL查询字符串或者Ajax请求
jQuery.getScript()——从服务端加载一个js文件,然后执行它
jQuery.getJSON()——从服务端加载用JSON编码过的数据
jQuery.get()——从服务端加载数据简单说其中两点

一、.ajaxStart()和.ajaxStop()

<!DOCTYPE HTML> 
<html> 
<head> 
<script type="text/javascript" src="test/jquery-1.7.2.min.js"></script> 
<script type="text/javascript"> 
$(document).ready(function(){ 
$('.log1').ajaxStart(function() { 
$(this).text('Triggered ajaxStart handler.'); 
}); 
$('.log2').ajaxStop(function() { 
$(this).text('Triggered ajaxStop handler.'); 
}); 
$('.trigger').click(function() { 
$('.result').load('xixi.html'); 
}); 
}); 
</script> 
</head> 
<body> 
<div class="trigger">Trigger</div> 
<div class="result"></div> 
<div class="log1"></div> 
<div class="log2"></div> 
</body> 
</html>

代码中class为result的元素load了一个xixi.html,此文件中的内容随便,只要存在这个文件就行。js执行方法的顺序是


$(this).text('Triggered ajaxStart handler.');

然后

加载晚xixi.html里的内容到class为result的元素中

最后

$(this).text('Triggered ajaxStop handler.');
二、.ajaxSend()、.ajaxComplete()、.ajaxSuccess()以及.ajaxError()
<!DOCTYPE HTML> 
<html> 
<head> 
<script type="text/javascript" src="test/jquery-1.7.2.min.js"></script> 
<script type="text/javascript"> 
$(document).ready(function(){ 
$('.log1').ajaxStart(function() { 
$(this).text('Triggered ajaxStart handler.');//【1】 
}); 
$('.log2').ajaxStop(function() { 
$(this).text('Triggered ajaxStart handler.');//【5】 
}); 
$('.result').ajaxSend(function() { 
$(this).text('Triggered ajaxSend handler.');//【2】 
}); 
$('.result').ajaxComplete(function() { 
$(this).text('Triggered ajaxComplete handler.');//【4】 
}); 
$('.result').ajaxSuccess(function() { 
$(this).text('Triggered ajaxSuccess handler.');//【3】 
}); 
$(".result").ajaxError(function() { 
$(this).text( "Triggered ajaxError handler." ); 
}); 
$('.trigger').click(function() { 
$('.result').load('xixi.html'); 
}); 
}); 
</script> 
</head> 
<body> 
<div class="trigger">Trigger</div> 
<div class="result"></div> 
<div class="log1"></div> 
<div class="log2"></div> 
</body> 
</html>

上述代码中还是class为result的加载一个html文件。

执行顺序代码中已经标出

如果请求过程中出现什么错误,比如说文件不存在等,就会执行.ajaxError()中的方法而不是.ajaxSuccess()中的。

以前总是对ajax认识很乱,现在有个全面的认识,总结一下,希望共同学习,另外请求中的方式是HTTP GET还是HTTP POST也是值得研究的。

jquery中介绍ajax的地址ajax的使用

Javascript 相关文章推荐
javascript生成大小写字母
Jul 03 Javascript
浅谈JavaScript超时调用和间歇调用
Aug 30 Javascript
深入理解JavaScript内置函数
Jun 03 Javascript
js实现背景图自适应窗口大小
Jan 10 Javascript
整理关于Bootstrap表单的慕课笔记
Mar 29 Javascript
AngularJS  ng-repeat遍历输出的用法
Jun 19 Javascript
Angular将填入表单的数据渲染到表格的方法
Sep 22 Javascript
Node.js学习之查询字符串解析querystring详解
Sep 28 Javascript
Node.js系列之连接DB的方法(3)
Aug 30 Javascript
vue element upload组件 file-list的动态绑定实现
Oct 11 Javascript
vue 组件开发原理与实现方法详解
Nov 29 Javascript
vue自定义组件(通过Vue.use()来使用)即install的用法说明
Aug 11 Javascript
js控制滚动条缓慢滚动到顶部实现代码
Mar 20 #Javascript
JSON+JavaScript处理JSON的简单例子
Mar 20 #Javascript
js或者jquery判断图片是否加载完成实现代码
Mar 20 #Javascript
javascript 三种方法实现获得和设置以及移除元素属性
Mar 20 #Javascript
asp.net中System.Timers.Timer的使用方法
Mar 20 #Javascript
js控制的回到页面顶端goTop的代码实现
Mar 20 #Javascript
让图片旋转任意角度及JQuery插件使用介绍
Mar 20 #Javascript
You might like
openflashchart 2.0 简单案例php版
2012/05/21 PHP
php中http与https跨域共享session的解决方法
2014/12/20 PHP
php+mysql数据库查询实例
2015/01/21 PHP
PHP访问Google Search API的方法
2015/03/05 PHP
jQuery Ajax 全解析
2009/02/08 Javascript
Document对象内容集合(比较全)
2010/09/06 Javascript
学习从实践开始之jQuery插件开发 菜单插件开发
2012/05/03 Javascript
js模仿hover的具体实现代码
2013/12/30 Javascript
浅谈js中StringBuffer类的实现方法及使用
2016/09/02 Javascript
详解PHP中pathinfo()函数导致的安全问题
2017/01/05 Javascript
详解Vue自定义过滤器的实现
2017/01/10 Javascript
js实现一个猜数字游戏
2017/03/31 Javascript
Vue中v-for的数据分组实例
2018/03/07 Javascript
还不懂递归?读完这篇文章保证你会懂
2018/07/29 Javascript
vue设置一开始进入的页面教程
2019/10/28 Javascript
vue中监听路由参数的变化及方法
2019/12/06 Javascript
keep-Alive搭配vue-router实现缓存页面效果的示例代码
2020/06/24 Javascript
[00:32]DOTA2上海特级锦标赛 Ehome战队宣传片
2016/03/03 DOTA
Python脚本实现自动将数据库备份到 Dropbox
2017/02/06 Python
Python使用sorted排序的方法小结
2017/07/28 Python
Python加载带有注释的Json文件实例
2018/05/23 Python
Python基于滑动平均思想实现缺失数据填充的方法
2019/02/21 Python
详解Python的数据库操作(pymysql)
2019/04/04 Python
python字符串中匹配数字的正则表达式
2019/07/03 Python
如何验证python安装成功
2020/07/06 Python
马来西亚太阳镜、眼镜和隐形眼镜网上商店:Focus Point
2018/12/13 全球购物
.NET是怎么支持多种语言的
2015/02/24 面试题
花卉与景观设计系大学生求职信
2013/10/01 职场文书
药学专业大专生的自我评价
2013/12/12 职场文书
校园安全教育广播稿
2014/02/17 职场文书
保密协议书范本
2014/04/22 职场文书
租房协议书样本
2014/08/20 职场文书
复试通知单模板
2015/04/24 职场文书
2015年度内部审计工作总结
2015/05/20 职场文书
南阳市白酒市场的调查报告
2019/11/08 职场文书
Mysql如何实现不存在则插入,存在则更新
2022/03/25 MySQL