html同时执行多个ajax,Ajax方法详解以及多个Ajax并发执行
AJAX = Asynchronous JavaScript and XML(異步的 JavaScript 和 XML)。javascript
先來一段代碼html
$.ajax({
type: "GET或者post",
url: url,
data: data,
dataType: "json",
success: function(data){
aler("請求成功");
}
error:function(data){
aler("請求失敗");
}
});
經常使用參數
1.url:
發送請求的地址(默認為當前頁地址)java
2.type:
請求方式(post或get)默認為getjquery
4.async:
默認設置為true,表示異步請求。若是須要發送同步請求,請將此選項設置為falseajax
5.cache:
默認為true(當dataType為script時,默認為false),設置為false將不會從瀏覽器緩存中加載請求信息json
6.data:
要求為Object或String類型的參數,發送到服務器的數據瀏覽器
7.dataType:
預期服務器返回的數據類型
xml:返回XML文檔,可用JQuery處理
html:返回純文本HTML信息
script:返回純文本JavaScript代碼
json:返回JSON數據。
jsonp:JSONP格式
text:返回純文本字符串緩存
8.success:要求為Function類型的參數,請求成功后調用的回調函數,有兩個參數。
(1)由服務器返回,并根據dataType參數進行處理后的數據。
(2)描述狀態的字符串。
function(data, textStatus){
//data多是xmlDoc、jsonObj、html、text等等
this;? //調用本次ajax請求時傳遞的options參數
}服務器
9.error:
要求為Function類型的參數,請求失敗時被調用的函數。該函數有3個參數,即XMLHttpRequest對象、錯誤信息、捕獲的錯誤對象(可選)。ajax事件函數以下:
function(XMLHttpRequest, textStatus, errorThrown){
//一般狀況下textStatus和errorThrown只有其中一個包含信息
this;?? //調用本次ajax請求時傳遞的options參數
}并發
多個Ajax并發頁面錯誤解決方法
(1)將并行改串行
function async1(){
// 第一個ajax請求
async2();
}
function async2(){
// 第二個ajax請求
}
//將并行變成串行
async1();
屢次執行統一個接口也能夠用此方法
var a=0;
function async1(a){
//ajax方法
}
a++;? //執行次數
success(){? ?//獲取接口成功后
if(a
async1(a)
}
}
(2)回調計數
設置計數實現
//計數
var n=0;
function async1(){
//ajax方法1
callback();
}
function async2(){
//ajax方法2
callback();
}
function callback(){
n++;
if(2==n) console.log('都已執行完畢');
}
(3)jquery
var d1 = $.Deferred();
var d2 = $.Deferred();
function async1(){
d1.resolve( "Fish" );
}
function async2(){
d2.resolve( "Pizza" );
}
$.when( d1, d2 ).done(function ( v1, v2 ) {
console.log( v1 + v2 + '已完成');
});
(4)ajax async設為同步執行
$.when($.ajax, $ajax).done(function() { "AJAX執行成功后,執行的方法"})
超強干貨來襲 云風專訪:近40年碼齡,通宵達旦的技術人生總結
以上是生活随笔為你收集整理的html同时执行多个ajax,Ajax方法详解以及多个Ajax并发执行的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: html左右滑动选择控件,jQuery让
- 下一篇: 2021重庆黔江中学高考成绩查询,202