jquery ajax请求实例深入解析


Posted in Javascript onNovember 26, 2012

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()

[html]
<!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的使用
Andy_能力越到责任越大
Javascript 相关文章推荐
js随机颜色代码的多种实现方式
Apr 23 Javascript
使用jquery解析XML的方法
Sep 05 Javascript
不同编码的页面表单数据乱码问题解决方法
Feb 15 Javascript
javascript实现获取浏览器版本、浏览器类型
Dec 02 Javascript
AngularJS基础 ng-init 指令简单示例
Aug 02 Javascript
详解Angular的双向数据绑定(MV-VM)
Dec 26 Javascript
详解angularJs中关于ng-class的三种使用方式说明
Jun 02 Javascript
AngularJs用户登录问题处理(交互及验证、阻止FQ处理)
Oct 26 Javascript
js生成word中图片处理方法
Jan 06 Javascript
vue elementUI使用tabs与导航栏联动
Jun 21 Javascript
Vue+iview+webpack ie浏览器兼容简单处理
Sep 20 Javascript
Vue项目中使用mock.js的完整步骤
Jan 12 Vue.js
jquery validate poshytip 自定义样式
Nov 26 #Javascript
一个可拖拽列宽表格实例演示
Nov 26 #Javascript
JS编程小常识很有用
Nov 26 #Javascript
javascript:history.go()和History.back()的区别及应用
Nov 25 #Javascript
js实现拖拽 闭包函数详细介绍
Nov 25 #Javascript
jquery miniui 教程 表格控件 合并单元格应用
Nov 25 #Javascript
JavaScript mapreduce工作原理简析
Nov 25 #Javascript
You might like
php gd2 上传图片/文字水印/图片水印/等比例缩略图/实现代码
2010/05/15 PHP
模板引擎正则表达式调试小技巧
2011/07/20 PHP
ecshop实现smtp发送邮件
2015/02/03 PHP
详解PHP防止盗链防止迅雷下载的方法
2017/04/26 PHP
PHP大文件切割上传并带进度条功能示例
2019/07/01 PHP
javascript操作cookie_获取与修改代码
2009/05/21 Javascript
js字符编码函数区别分析
2011/12/28 Javascript
基于JavaScript实现 获取鼠标点击位置坐标的方法
2013/04/12 Javascript
JS实现网页上随机产生超链接地址的方法
2015/11/09 Javascript
JS判断字符串字节数并截取长度的方法
2016/03/05 Javascript
JavaScript实现显示函数调用堆栈的方法
2016/04/21 Javascript
三种带箭头提示框总结实例
2016/06/14 Javascript
深入浅析JS的数组遍历方法(推荐)
2016/06/15 Javascript
JS仿hao123导航页面图片轮播效果
2016/09/01 Javascript
js原生之焦点图转换加定时器实例
2016/12/12 Javascript
详解webpack+angular2开发环境搭建
2017/06/28 Javascript
Bootstrap + AngularJS 实现简单的数据过滤字符查找功能
2017/07/27 Javascript
JS异步函数队列功能实例分析
2017/11/28 Javascript
微信小程序页面缩放式侧滑效果的实现代码
2018/11/15 Javascript
Vue.js样式动态绑定实现小结
2019/01/24 Javascript
一个月入门Python爬虫学习,轻松爬取大规模数据
2018/01/03 Python
Java实现的执行python脚本工具类示例【使用jython.jar】
2018/03/29 Python
使用Python快速搭建HTTP服务和文件共享服务的实例讲解
2018/06/04 Python
keras之权重初始化方式
2020/05/21 Python
python和php哪个容易学
2020/06/19 Python
python学习笔记之多进程
2020/08/06 Python
纯CSS3实现运行时钟的示例代码
2021/01/25 HTML / CSS
PHP开发的一般流程
2013/08/13 面试题
写演讲稿要注意的六件事
2014/01/14 职场文书
党员干部廉洁承诺书
2014/05/28 职场文书
专题组织生活会思想汇报
2014/10/01 职场文书
大学生个人简历自荐信
2015/03/06 职场文书
2015年七一建党节演讲稿
2015/03/19 职场文书
教师节祝酒词
2015/08/11 职场文书
2016年“5.12”国际护士节活动总结
2016/04/06 职场文书
「天才王子的赤字国家重生术」妮妮姆·拉雷粘土人开订
2022/03/21 日漫