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 相关文章推荐
javascript Array.sort() 跨浏览器下需要考虑的问题
Dec 07 Javascript
jQuery使用after()方法在元素后面添加多项内容的方法
Mar 26 Javascript
javascript父子页面通讯实例详解
Jul 17 Javascript
JS实现超简单的汉字转拼音功能示例
Dec 22 Javascript
让div运动起来 js实现缓动效果
Jul 06 Javascript
浅谈angular2 组件的生命周期钩子
Aug 12 Javascript
全面解析jQuery中的$(window)与$(document)的用法区别
Aug 15 jQuery
妙用缓存调用链实现JS方法的重载
Apr 30 Javascript
JS实现图片拖拽交换效果
Nov 30 Javascript
使用PreloadJS加载图片资源的基础方法详解
Feb 03 Javascript
vue使用echarts实现水平柱形图实例
Sep 09 Javascript
如何在 Vue 表单中处理图片
Jan 26 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牛逼的面试题分享
2013/01/18 PHP
php+mongodb判断坐标是否在指定多边形区域内的实例
2016/10/28 PHP
深入理解PHP中mt_rand()随机数的安全
2017/10/12 PHP
PHP MVC框架中类的自动加载机制实例分析
2019/09/18 PHP
浅析ajax请求json数据并用js解析(示例分析)
2013/07/13 Javascript
js将字符串转成正则表达式的实现方法
2013/11/13 Javascript
js取得html iframe中的元素和变量值
2014/06/30 Javascript
JavaScript动态修改背景颜色的方法
2015/04/16 Javascript
JQuery球队选择实例
2015/05/18 Javascript
AngularJS中过滤器的使用与自定义实例代码
2016/09/17 Javascript
简单理解vue中实例属性vm.$els
2016/12/01 Javascript
es6+angular1.X+webpack 实现按路由功能打包项目的示例
2017/08/16 Javascript
聊聊Vue.js的template编译的问题
2017/10/09 Javascript
vue视图不更新情况详解
2019/05/16 Javascript
vue学习笔记之slot插槽用法实例分析
2020/02/29 Javascript
python统计一个文本中重复行数的方法
2014/11/19 Python
pymongo实现多结果进行多列排序的方法
2015/05/16 Python
以视频爬取实例讲解Python爬虫神器Beautiful Soup用法
2016/01/20 Python
Python实现TCP/IP协议下的端口转发及重定向示例
2016/06/14 Python
Python基于回溯法子集树模板解决最佳作业调度问题示例
2017/09/08 Python
Python实现KNN邻近算法
2021/01/28 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
树莓派4B+opencv4+python 打开摄像头的实现方法
2019/10/18 Python
Python获取、格式化当前时间日期的方法
2020/02/10 Python
一文弄懂Pytorch的DataLoader, DataSet, Sampler之间的关系
2020/07/03 Python
css3 条纹化和透明化表格Firefox下测试成功
2014/04/15 HTML / CSS
CSS3 Calc实现滚动条出现页面不跳动问题
2017/09/14 HTML / CSS
Notino匈牙利:购买香水和化妆品
2019/04/12 全球购物
Skyscanner香港:机票比价, 平机票和廉价航空机票预订
2020/02/07 全球购物
社区敬老月活动实施方案
2014/02/17 职场文书
计算机软件专业求职信
2014/06/10 职场文书
公益广告标语
2014/06/19 职场文书
咖啡店创业计划书范文
2014/09/15 职场文书
教师自我剖析材料(群众路线)
2014/09/29 职场文书
党的群众路线教育实践活动批评与自我批评范文
2014/10/16 职场文书
党的群众路线教育实践活动组织生活会发言材料
2014/10/17 职场文书