標籤:非同步請求 code exp 常見 rip success 使用者 結果 class
$("#form1").attr("action", url); var formData = $("#form1").serialize(); $.ajax({ type: "POST", url: "/tohersystem/dataexport/migration.do", dataType: "json", data: formData,// async:false, beforeSend: function () { layer.load(1); }, success: function (returnData) { if (returnData.code == "success") { window.location.href = ‘/FileDownload?filePath=‘+returnData.msg layer.closeAll(); } else{ layer.closeAll(); layer.msg(returnData.msg, {icon: 5, time: 1000}); layer.close(); } } });
layer.load() 顯示的是一個載入中的動畫;
關於參數,layer.load();
例子1:
layer.load (0);
參數可以設定為0、1、2分別代表不同的動畫效果;
例子2:
layer.load(2, {time: 3*1000});
//表示動畫效果為2,最長停留時間為3秒
3. 注意
layer.load()一般不會自動關閉,調用layer.load()一般是ajax()回調後處理的,如果回調沒有結果或者資料錯誤,就執行;如果執行完畢,就關閉layer.load();
關閉方法:layer.close();
常見的一種效果,在用ajax請求時,沒有返回前會出現前出現一個轉動的loading小表徵圖或者“內容載入中..”,用來告知使用者正在請求資料。這個就可以用beforeSend方法來實現。
ajax的非同步請求