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 相关文章推荐
js下判断 iframe 是否加载完成的完美方法
Oct 26 Javascript
用于节点操作的API,颠覆原生操作HTML DOM节点的API
Dec 11 Javascript
原来Jquery.load的方法可以一直load下去
Mar 28 Javascript
IE与Firefox在JavaScript上的7个不同句法分享
Oct 30 Javascript
jquery实现的下拉和收缩效果示例
Aug 21 Javascript
深入理解JavaScript编程中的原型概念
Jun 25 Javascript
js+flash实现的5图变换效果广告代码(附演示与demo源码下载)
Apr 01 Javascript
javascript时间差插件分享
Jul 18 Javascript
Angular5给组件本身的标签添加样式class的方法
Apr 07 Javascript
对layui初始化列表的CheckBox属性详解
Sep 13 Javascript
webpack中的模式(mode)使用详解
Feb 20 Javascript
JS如何寻找数组中心索引过程解析
Jun 01 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
PHP设置一边执行一边输出结果的代码
2013/09/30 PHP
PHP编程实现多维数组按照某个键值排序的方法小结【2种方法】
2017/04/27 PHP
PHP错误处理函数register_shutdown_function使用示例
2017/07/03 PHP
javascript 处理HTML元素必须避免使用的一种方法
2009/07/30 Javascript
原创jQuery弹出层插件分享
2015/04/02 Javascript
关于JSON与JSONP简单总结
2016/08/16 Javascript
jQuery EasyUI tree 使用拖拽时遇到的错误小结
2016/10/10 Javascript
Vue中fragment.js使用方法详解
2017/03/09 Javascript
分享一个精简的vue.js 图片lazyload插件实例
2017/03/13 Javascript
jQuery开源组件BootstrapValidator使用详解
2017/06/29 jQuery
js实现1,2,3,5数字按照概率生成
2017/09/12 Javascript
JavaScript实现正则去除a标签并保留内容的方法【测试可用】
2018/07/18 Javascript
vue2.0结合Element-ui实战案例
2019/03/06 Javascript
Smartour 让网页导览变得更简单(推荐)
2019/07/19 Javascript
JS面向对象之单选框实现
2020/01/17 Javascript
python爬虫_微信公众号推送信息爬取的实例
2017/10/23 Python
动态规划之矩阵连乘问题Python实现方法
2017/11/27 Python
numpy使用技巧之数组过滤实例代码
2018/02/03 Python
Python实现性能自动化测试竟然如此简单
2019/07/30 Python
python多线程同步之文件读写控制
2021/02/25 Python
PyCharm取消波浪线、下划线和中划线的实现
2020/03/03 Python
python爬虫使用正则爬取网站的实现
2020/08/03 Python
英国在线玫瑰专家:InterRose
2019/12/01 全球购物
Mybag美国/加拿大:英国奢华包包和名牌手袋网站
2020/02/16 全球购物
语文教育专业应届生求职信
2013/11/23 职场文书
汽车技术服务与营销专业推荐信
2013/11/29 职场文书
《小壁虎借尾巴》教学反思
2014/02/16 职场文书
消防工作实施方案
2014/06/09 职场文书
初中语文教学研修日志
2015/11/13 职场文书
公务员廉洁从政心得体会
2016/01/19 职场文书
2019年朋友圈经典励志语录50条
2019/07/05 职场文书
导游词之台湾阿里山
2019/10/23 职场文书
只用40行Python代码就能写出pdf转word小工具
2021/05/31 Python
解析高可用Redis服务架构分析与搭建方案
2021/06/20 Redis
 分享一个Python 遇到数据库超好用的模块
2022/04/06 Python
Tomcat弱口令复现及利用
2022/05/06 Servers