jQuery.ajax(url,[settings])
概述
通過 HTTP 請求加載遠程數據。
jQuery 底層 AJAX 實現。簡單易用的高層實現見 $.get, $.post 等。$.ajax() 返回其創建的 XMLHttpRequest 對象。大多數情況下你無需直接操作該函數,除非你需要操作不常用的選項,以獲得更多的靈活性。
最簡單的情況下,$.ajax()可以不帶任何參數直接使用。
注意,所有的選項都可以通過$.ajaxSetup()函數來全局設置。
回調函數
如果要處理$.ajax()得到的數據,則需要使用回調函數。beforeSend、error、dataFilter、success、complete。
- beforeSend 在發送請求之前調用,並且傳入一個XMLHttpRequest作為參數。
- error 在請求出錯時調用。傳入XMLHttpRequest對象,描述錯誤類型的字符串以及一個異常對象(如果有的話)
- dataFilter 在請求成功之后調用。傳入返回的數據以及"dataType"參數的值。並且必須返回新的數據(可能是處理過的)傳遞給success回調函數。
- success 當請求之后調用。傳入返回后的數據,以及包含成功代碼的字符串。
- complete 當請求完成之后調用這個函數,無論成功或失敗。傳入XMLHttpRequest對象,以及一個包含成功或錯誤代碼的字符串。
demo如下:
前台js代碼:
var url = "/test/check"; $.ajax({ type: "post", url: url, // data: "para="+para, 此處data可以為 a=1&b=2類型的字符串 或 json數據。 data: {"para":1}, cache: false, async : false, dataType: "json", success: function (data ,textStatus, jqXHR) { if("true"==data.flag){ alert("合法!"); return true; }else{ alert("不合法!錯誤信息如下:"+data.errorMsg); return false; } }, error:function (XMLHttpRequest, textStatus, errorThrown) { alert("請求失敗!"); } });
后台java代碼:
/** * 校驗 * * @return void */ public void check(){ Map<String,String> result = new HashMap<String,String>(); boolean flag = false; try{ String para= getPara("para"); //校驗 代碼... result.put("flag", "true"); renderJson(result);//返回json數據 }catch(Exception e){ result.put("flag", flag+""); result.put("errorMsg", e.getMessage()); renderJson(result);//返回json數據 e.printStackTrace(); } }
限時領取免費Java相關資料,涵蓋了Java、Redis、MongoDB、MySQL、Zookeeper、Spring Cloud、Dubbo/Kafka、Hadoop、Hbase、Flink等高並發分布式、大數據、機器學習等技術。
資料傳送門: https://mp.weixin.qq.com/s/u2b_NVNuMuAPE0w4lc45fw
關注下方公眾號即可免費領取: