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 相关文章推荐
表单(FORM)的一些实用效果代码
Mar 25 Javascript
Javascript读取cookie函数代码
Oct 16 Javascript
JavaScript的模块化:封装(闭包),继承(原型) 介绍
Jul 22 Javascript
jquery实现可拖动DIV自定义保存到数据的实例
Nov 20 Javascript
jQuery中animate用法实例分析
Mar 09 Javascript
javascript+canvas实现刮刮卡抽奖效果
Jul 29 Javascript
javascript超过容器后显示省略号效果的方法(兼容一行或者多行)
Jul 14 Javascript
jQuery实现给input绑定回车事件的方法
Feb 09 Javascript
JS+CSS实现下拉刷新/上拉加载插件
Mar 31 Javascript
jQuery实现可兼容IE6的遮罩功能详解
Sep 19 jQuery
微信小程序 拍照或从相册选取图片上传代码实例
Aug 28 Javascript
一篇文章带你搞懂Vue虚拟Dom与diff算法
Aug 25 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开发过程中关于继承的使用方法分享
2011/06/17 PHP
php检测文件编码的方法示例
2014/04/25 PHP
PHP7新特性foreach 修改示例介绍
2016/08/26 PHP
jQuery1.6 使用方法一
2011/11/23 Javascript
cookie在javascript中的使用技巧以及隐私在服务器端的设置
2012/12/03 Javascript
jQuery学习笔记之jQuery动画效果
2013/09/09 Javascript
javascript实现左右控制无缝滚动
2014/12/31 Javascript
如何实现chrome浏览器关闭页面时弹出“确定要离开此面吗?”
2015/03/05 Javascript
关于JavaScript的变量的数据类型的判断方法
2015/08/14 Javascript
原生javascript实现解析XML文档与字符串
2016/03/01 Javascript
原生js获取iframe中dom元素--父子页面相互获取对方dom元素的方法
2016/08/05 Javascript
Vue.js每天必学之表单控件绑定
2016/09/05 Javascript
Vue动态组件实例解析
2017/08/20 Javascript
JS常见构造模式实例对比分析
2018/08/27 Javascript
vue 弹框产生的滚动穿透问题的解决
2018/09/21 Javascript
vue.js 子组件无法获取父组件store值的解决方式
2019/11/08 Javascript
vue实现输入一位数字转汉字功能
2019/12/13 Javascript
js表达式与运算符简单操作示例
2020/02/15 Javascript
使用Vant完成通知栏Notify的提示操作
2020/11/11 Javascript
python3.4.3下逐行读入txt文本并去重的方法
2018/04/29 Python
python实现LBP方法提取图像纹理特征实现分类的步骤
2019/07/11 Python
Python TCPServer 多线程多客户端通信的实现
2019/12/31 Python
Selenium python时间控件输入问题解决方案
2020/07/22 Python
佛罗里达州印第安河新鲜水果:Hale Groves
2017/02/20 全球购物
ZWILLING双立人英国网上商店:德国刀具锅具厨具品牌
2018/05/15 全球购物
世界上最受欢迎的花店:1-800-Flowers.com
2020/06/01 全球购物
电大会计学自我鉴定
2014/02/06 职场文书
幼儿教师研修感言
2014/02/12 职场文书
职务聘任书范文
2014/03/29 职场文书
党支部创先争优活动总结
2014/08/28 职场文书
高一课前三分钟演讲稿
2014/09/13 职场文书
民主评议党员工作总结
2014/10/20 职场文书
2014年工商所工作总结
2014/12/09 职场文书
2015年社区反邪教工作总结
2015/10/14 职场文书
2019个人工作自我评价范文(3篇)
2019/09/19 职场文书
Spring 使用注解开发
2022/05/20 Java/Android