什麼是AJAX
AJAX(Asynchronous Javascript And XML)翻譯成中文就是"異步Javascript和XML"。
在傳統的客戶端和服務器交互中,大多是同步交互,服務器響應時,必需重載整個網頁面。
而在AJAX中,可以異步的向服務器發請求,與後臺服務器進行少量數據交換,最終將服務器響應的結果響應在頁面上。由於這一過程是"偷偷進行"的,用戶完全感覺不到向服務器發送了請求,最終的響應結果,也沒有令整個頁面刷新,而僅僅是對網頁的某部分進行更新。
總結一句話,使用AJAX可以實現"異步請求,局部刷新"的效果。
jQuery實現AJAX
url – 發送請求的URL地址
type – 可選,請求方式,默認爲"GET"。
async – 可選,默認爲true,表示異步交互
data – 可選,發送至服務器的key/value數據 { “key” : “value” }
dataType – 可選,服務器響應數據的類型,默認是responseXML或responseText,其中可用的數據類型有:
json:返回JSON數據。
xml:返回XML文檔,可用JS或jQuery處理。
text:返回純文本字符串。
html:返回純文本HTML內容,包含的script標籤會在插入DOM時執行。
…
success – 可選,請求成功後執行的函數,function(result){…},函數參數:
result – 服務器返回的數據
代碼示例:
$.ajax({
"url" : "/ajax/AjaxCheckUsername",
路徑也可拼接Id等數據..
(例-"url" : "/day08_ajax/AjaxCheckUsername"+$ ("demo").val();)
"type" : "POST",
"data" : {"username" : username},
"success" : function(result){
alert("ajax:"+result );
}
"error": function (jqXHR) {
alert("發生錯誤"+jqXHR.status)
}
});
關於data
var data = {};
/** 風險點名稱 */
data["riskName"] = $("#riskName").val();
/**公司ID*/
data["riskComponeyId"] = $("#riskComponeyId").val();
/*工區*/
data["riskWorkAreaId"] =$("#riskWorkAreaId").val();
/*班組*/
data["riskTeamId"] =$("#riskTeamId").val();
/*風險類型ID*/
data["riskClassify"] =$("#riskClassify").val();
相當於手動獲取值,轉爲json串存入data裏面
關於url
路徑也可拼接Id等數據.
“url” : “/AjaxCheckUsername?parentId=”+$("#parentId").val()+"&name=zz&age=20"
關於Controller接收值的問題
直接用對象接受就行,簡單粗暴。