全局ajax的使用
一、ajax介紹
詳細介紹請看:http://www.runoob.com/ajax/ajax-tutorial.html
AJAX = Asynchronous JavaScript and XML(異步的 JavaScript 和 XML)。
AJAX 不是新的編程語言,而是一種使用現(xiàn)有標準的新方法。
AJAX 最大的優(yōu)點是在不重新加載整個頁面的情況下,可以與服務(wù)器交換數(shù)據(jù)并更新部分網(wǎng)頁內(nèi)容。
AJAX 不需要任何瀏覽器插件,但需要用戶允許JavaScript在瀏覽器上執(zhí)行。
二、 ajax()介紹
詳細介紹請看:http://www.w3school.com.cn/jquery/ajax_ajax.asp
ajax() 方法通過 HTTP 請求加載遠程數(shù)據(jù)。
該方法是 jQuery 底層 AJAX 實現(xiàn)。簡單易用的高層實現(xiàn)見 $.get, $.post 等。$.ajax() 返回其創(chuàng)建的 XMLHttpRequest 對象。大多數(shù)情況下你無需直接操作該函數(shù),除非你需要操作不常用的選項,以獲得更多的靈活性。
最簡單的情況下,$.ajax() 可以不帶任何參數(shù)直接使用。
注意:所有的選項都可以通過 $.ajaxSetup() 函數(shù)來全局設(shè)置。
三、全局ajax的使用
詳細介紹請看:jquery全局ajax參數(shù)詳細執(zhí)行分析-$.ajax竟然可以這樣用!
詳細介紹請看:Jquery $.ajax請求詳解及ajax全局變量分析
?
jquery?提供了一個列表 全局Ajax事件處理程序?。 這些全局事件是發(fā)起每一個AJAX請求時產(chǎn)生。如果全局變量jQuery.ajaxSetup()是true。
默認情況下它是true。
-
.ajaxStart——注冊一個處理程序被稱為第一個AJAX請求時開始;每個頁面中所有的ajax請求只發(fā)生一次。
-
.ajaxSend——附加一個函數(shù)執(zhí)行之前發(fā)送一個AJAX請求;每次發(fā)起ajax請求就觸發(fā)一次。
-
.ajaxError——注冊一個處理程序被稱為AJAX請求完成時一個錯誤;
-
.ajaxSuccess——附加一個函數(shù)執(zhí)行時一個AJAX請求成功完成;
-
.ajaxComplete——注冊一個處理程序被稱為AJAX請求完成;每次發(fā)起一次ajaxsend請求就對應(yīng)一次complete。
-
.ajaxStop——注冊一個處理程序被稱為當所有AJAX請求已經(jīng)完成了。
每當一個Ajax請求即將發(fā)送,jQuery檢查是否有任何其他響應(yīng)過程中的Ajax請求。如果沒有檢查到,jQuery就會觸發(fā)ajaxStart事件。
我們通過這些全局變量就能夠保存每次ajax請求,并在每個ajax請求處理完成后,清理這個緩存。
?
使用例子:
// 添加ajax全局事件處理。 $(document).ajaxStart(onStart).ajaxSend(onSend).ajaxSuccess(onSuccess).ajaxError(onError).ajaxComplete(onComplete).ajaxStop(onStop);/*** 第一個ajax請求完成開始時,執(zhí)行此方法(2)--這是一個 Ajax 事件* @param event 請求的事件*/ function onStart(event) {debuggerconsole.log("onStart"); } /*** ajax請求發(fā)送之前,執(zhí)行此方法(3)* @param event 請求的事件*/ function onSend(event) {debuggerconsole.log("onSend"); } /*** ajax請求成功,執(zhí)行成功方法后,執(zhí)行此方法(5)* @param event 請求的事件* @param xhr XMLHttpRequest* @param settings 操作*/ function onSuccess(event, xhr, settings) {debuggerconsole.log(xhr.responseJSON)console.log("onSuccess"+event+xhr+settings);// window.onload("www.baidu.com") } /*** ajax請求失敗,執(zhí)行失敗方法后,執(zhí)行此方法(5)--這是一個 Ajax 事件* @param event* @param xhr* @param settings*/ function onError(event, xhr, settings) {debuggerconsole.log("onError"+event+xhr+settings); } /*** ajax請求完成時,執(zhí)行此方法(6)--這是一個 Ajax 事件* @param event* @param xhr* @param settings*/ function onComplete(event, xhr, settings) {debuggerconsole.log("onComplete"+event+xhr+settings); } /*** 所有的ajax請求完成時,執(zhí)行此方法(7)--這是一個 Ajax 事件* @param event*/ function onStop(event) {debuggerconsole.log("onStop"+event); }$("button").click(function(){debugger$.ajax({url: 'http://localhost:8090/csyadminService/exampleAjax',type: 'POST',data: {name: 'test1',sex: 'test2'},success: function (result) {// (4)debuggerif(result.code != "666") {return;}alert("ce")console.log("success:"+result);},error:function (result) { // (4)console.log("error:"+result);}}); // (1) }); 全局ajax的js代碼 <button>點我</button> 全局ajax的html代碼?
轉(zhuǎn)載于:https://www.cnblogs.com/nananana/p/8275594.html
總結(jié)
- 上一篇: 3、Python字典集合
- 下一篇: js获取当前页面的参数,带完善~~~