示例
1 function jqAjaxTest() { 2 var jqRequestUrl = "AjaxHandler.ashx"; 3 $.get(jqRequestUrl + "?action=jquery", { userName: "jeff wong", location: "beijing" }, jqGetNormalCallBack, 'text'); //返回数据类型 4 } 5 function jqGetNormalCallBack(oData) { 6 $("#spanResult").html(oData);//这里直接json数据绑定了,下一个jquery方法会有处理 7 $("#spanResult").css("display", "block"); 8 $("#spanResult").css("color", "red"); 9 }ps:本例中,我们返回的是一段json类型的数据,在客户端没有对json类型数据进行处理,在下一个方法(jQuery.getJSON)中会改进处理的。
4、jQuery.getJSON(url,[data],[callback])
通过 HTTP GET 请求载入 JSON 数据。
在 jQuery 1.2 中,您可以通过使用JSONP 形式的回调函数来加载其他网域的JSON数据,如 "myurl?callback=?"。jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。 注意:此行以后的代码将在这个回调函数执行前执行。
返回值 XMLHttpRequest
参数
url (String) : 发送请求地址。 data (Map) : (可选) 待发送 Key/value 参数。 callback (Function): (可选) 载入成功时回调函数。
示例
1 function jqAjaxTest() { 2 var jqRequestUrl = "AjaxHandler.ashx"; 3 //getJSON方法调用 4 $.getJSON(jqRequestUrl + "?action=jquery", { userName: "jeff wong", location: "beijing" }, jqGetJsonCallBack); //返回json数据类型 5 } 6 //对json数据进行处理 (oData是json类型的数据) 7 function jqGetJsonCallBack(oData) { 8 var oJsonStr = ""; 9 //取json中的数据,并呈现 10 oJsonStr += "userName:" + oData.userName + " location:" + oData.location + "<br/>"; 11 //在div中显示所有数据 12 $("#divResult").html(oJsonStr); 13 $("#divResult").css("display", "block"); 14 $("#divResult").css("color", "red"); 15 }5、jQuery.getScript(url,[callback])
通过 HTTP GET 请求载入并执行一个 JavaScript 文件。
jQuery 1.2 版本之前,getScript 只能调用同域 JS 文件。 1.2中,您可以跨域调用 JavaScript 文件。注意:Safari 2 或更早的版本不能在全局作用域中同步执行脚本。如果通过 getScript 加入脚本,请加入延时函数。
返回值 XMLHttpRequest
参数
url (String) : 待载入 JS 文件地址。
callback (Function) : (可选) 成功载入后回调函数。
示例
1 function jqAjaxTest() { 2 var jsUrl = "js/jqLoadJs.js"; 3 //getScript方法调用 4 $.getScript(jsUrl, jqGetJsCallBack); 5 } 6 //oData返回的是整个js路径下js文件内容 7 function jqGetJsCallBack(oData) { 8 alert(oData); 9 }6、jQuery.post(url,[data],[callback],[type])
通过远程 HTTP POST 请求载入信息。
这是一个简单的 POST 请求功能以取代复杂 .ajax。请求成功时可调用回调函数。如果需要在出错时执行函数,请使用.ajax。
返回值 XMLHttpRequest
参数
url (String) : 发送请求地址。
data (Map) : (可选) 待发送 Key/value 参数。
callback (Function) : (可选) 发送成功时回调函数。
type (String) : (可选) 返回内容格式,xml, html, script, json, text, _default。
示例
1 function jqAjaxTest() { 2 var jqRequestUrl = "AjaxHandler.ashx"; 3 $.post(jqRequestUrl + "?action=jquery", { userName: "jeff wong", location: "beijing" }, jqPostCallBack, "text"); //返回text数据类型 4 } 5 function jqPostCallBack(oData) { 6 //在div中显示所有数据 7 $("#divResult").html(oData); 8 $("#divResult").css("display", "block"); 9 $("#divResult").css("color", "red"); 10 }二、Ajax事件
1、ajaxComplete(callback)
AJAX 请求完成时执行函数。Ajax 事件。
XMLHttpRequest 对象和设置作为参数传递给回调函数。
返回值 jQuery
参数
callback (Function): 待执行函数
示例
1 function jqAjaxTest() { 2 var jqRequestUrl = "AjaxHandler.ashx"; 3 $.post(jqRequestUrl + "?action=jquery", { userName: "jeff wong", location: "beijing" }, jqPostCallBack, "text"); //返回text数据类型 4 //AJAX 请求完成时执行函数 5 $("#divResult").ajaxComplete(function(event, request, settings) { 6 $(this).append("<br/>请求完成."); 7 }); 8 } 9 function jqPostCallBack(oData) { 10 //在div中显示所有数据 11 $("#divResult").html(oData); 12 $("#divResult").css("display", "block"); 13 $("#divResult").css("color", "red"); 14 }2、ajaxError(callback)
AJAX 请求发生错误时执行函数。Ajax 事件。
XMLHttpRequest 对象和设置作为参数传递给回调函数。捕捉到的错误可作为最后一个参数传递。
返回值 jQuery
参数
callback (Function) : 待执行函数
1 function (event, XMLHttpRequest, ajaxOptions, thrownError) { 2 // thrownError 只有当异常发生时才会被传递 3 this; // 监听的 dom 元素 4 }