$.ajaxSetup()设置全局Ajax(ajax在jQuery中的运用学习第十一天)
在使用$.ajax()方法时,有时需要调用多个$.ajax()方法,如果每个方法都设置其中的请求细节,将是一件十分麻烦的事。为了简化这种工作,在jQuery中,可以使用$.ajaxSetup()方法设置全局性的ajax默认选项,一次设置,全局有效,这样大大简化了$.ajax()方法中细节的编写,该方法的调用格式为:
$.ajaxSetup([options])
其中,可选项参数[options]是一个对象,通过该对象可以设置$.ajax()方法中的参数。
示例:
(1)功能描述
在页面中,设置三个按钮,分别通过$.ajax()方法请求一个XML文档中的某部分数据,并回调的数据展示在页面中。在请求前,使用$.ajaxSetup()方法进行一些参数项的全局性设置。
(2)实现代码
<script type="text/javascript" src="text/jquery-1.8.2.min.js"></script>
<script type="text/javascript">
$(function() {
$.ajaxSetup({ //设置全局性的Ajax选项
type:"GET",
url:"UserInfo.xml",
dataType:"xml"
})
$("$Button1").click(function() { //"姓名"按钮的单击事件
$.ajax({
success:function(data) { //传回请求响应的数据
ShowData(data,"姓名","name"); //显示“姓名”部分
}
})
})
$("$Button2").click(function() { //"性别"按钮的单击事件
$.ajax({
success:function(data) { //传回请求响应的数据
ShowData(data,"性别","sex"); //显示“性别”部分
}
})
})
$("$Button3").click(function() { //"邮箱"按钮的单击事件
$.ajax({
success:function(data) { //传回请求响应的数据
ShowData(data,"邮箱","email"); //显示“邮箱”部分
}
})
})
/*
根据名称与值,获取请求响应数据中的某部分
@Parm d为请求响应后的数据
@Parm n为数据中文说明字符
@Parm d为数据在响应数据中的元素名称
*/
function ShowData(d, n, v){
$("#divTip").empty(); //先清空标记中的内容
var strHTML = "" //初始化保存内容变量
$(d).find("User").each(function() { //遍历获取的数据
var $strUser = $(this);
strHTML += n + ": " + $strUser.find(v).text() + "<hr>"
})
$("#divTip").html(strHtML); //处理后的数据
}
})
</script>
<div class="divFrame">
<div class="divTitle">
<span><input id="Button1" type="button" value="姓名" class="btn" /></span>
<span><input id="Button2" type="button" value="性别" class="btn" /></span>
<span><input id="Button3" type="button" value="邮箱" class="btn" /></span>
</div>
<div class="divContent">
<div id="divTip" class="clsShow"></div>
</div>
</div>
代码分析:
在js代码中,由于使用了$.ajaxSetup()方法设置部分全局性的Ajax参数选项,使后续代码中的异步数据请求非常简单,避免了重复编写相同代码。由于每次请求都要分析响应后的数据,因此通过一个自定义的函数ShowData,在每次调用时,根据不同的元素名称,返回对应的数据。
最新文章
- Linux下实现apache代理tomcat
- HttpContext.Current.Cache 过期时间
- HTML---百度新闻轮播图--定位练习
- 廖雪峰Java10加密与安全-4加密算法-5非对称加密算法
- 2016.2.29(异常)
- ScrollView中使用ListView
- WeakHashMap和Java引用类型详细解析
- linux驱动简单介绍
- matlab7.0安装说明
- 子集和问题 算法_LeetCode刷题实战90:子集 II
- 只考计算机知识吗,计算机二级只考一门吗?计算机二级考什么?
- Python面向对象编程之Zope.interface安装使用( @implementer)implements
- 今天写了一个含配置文件的 文件分割 及 合并 的java程序。
- jquery常用方法收藏 .
- avast:中兴手机预装恶意软件 嵌入固件底层
- 机械工程专业英语词汇
- 演化算法与适应度地形分析——再度思考
- 抢购为什么难,需要怎么做?
- Aspose WorkbookDesigner打开文件异常Error xml namespace
- 所有人都能看懂的华为交换机vlan配置