Ajax之load,get,post方式和getJSON

    首先是load方法能載入html代碼並插入DOM中,獲取靜態文件html

    load方法詳解:java

         load( String url,Object data(可選),Function callback(可選))json

         其中url加載的是html頁面安全

         data發送至服務器的key/value數據服務器

         callback是指註冊的回調函數jsp

注:至始至終不知道這個data是幹啥的,我想這個應該是提交到後臺的數據參數,利用getParameter方法能夠在後臺裏面獲取,若是有知道的能夠聯繫我函數

function loadFunction(){
	$("#divText").load('../html/LoadHtml1.html .class2',{name:"姓名"},callback);
	
}
function callback(responseText,textStatus,XMLHttpRequest){
	alert("調用了回調函數"+"1."+responseText+",2."+textStatus+",3."+XMLHttpRequest);
}

其中load方法參數url裏有個.class2,這裏指的是隻加載LoadHtml1.html頁面中的class=」class2」的全部元素結點的內容post

Callback傳入的參數:url

    responseText:請求返回的內容,這裏就是加載的html頁面code

    textStatus:請求狀態,success,errir,notmodified,timeout等4種

    XMLHttpRequest:XMLHttpRequest對象

    只要請求完成(complete)後,回調函數(callback)就會被觸發

 

 

若是是非靜態傳遞一些參數給服務器頁面,則須要$.get()或$.post()方法

$.get(String url (可選),Object data(可選),Function callback(可選),String type(可選))

其中,url 指的是提交的地址

data:發送到服務器端的數據(key/value),附加到url上

Callback:載入成功後回調的函數,當responseStatus爲success時回調該方法,

Type:服務器端返回內容的格式,xml,html,script,json,text和_default

 

get方式提交的回調函數在書上寫只有兩個函數,可是根據官方文檔和本人測驗實際是有三個參數

Callback回調函數會在get方式提交成功後纔會調用.

 

若是返回數據是xml格式,咱們要對返回的內容進行處理,例

$(data).find(「comment」).attr(「username」)

咱們須要在服務器端設置:response.setHeader(「COntent-Type:text/xml;charset=utf-8」)

 

Post方式:

$.post(String url (可選),Object data(可選),Function callback(可選),String type(可選))

 

$.post("postJsp.jsp",{name:$("#username").val(),age:$("#userage").val()},callback);

Get和post方式的最大的區別:get方式url後面會以?的形式添加key=value(&)

而post的參數會封裝到消息的實體內容而不可見,會更加安全

通常get的url體積大小爲2-4KB,具體也沒有測過

$("#send").click(function(){
	//通常get和post方式提交到actionServlet去處理業務邏輯,返回內容,而不是提交到某一頁面,將頁面內容所有返回
	
	//1.這個是能夠的,返回的內容responseText是getJsp.jsp頁面的全部內容
	//$.post("getJsp.jsp",{username:$("#username").val(),userage:$("#userage").val()},callback);
	
	//2.這個是OK的,和下面的同樣
	//$.get("../AjaxServletDemo",{username:$("#username").val(),userage:$("#userage").val()},callback);
	
	var username=$("#username").val();;
	//3.能夠提交,而且獲取的內容是後臺response.getWriter()打印出來的
	$.get("../AjaxServletDemo?username="+username,null,callback);
	
});
function callback(responseText,textStatus,XMLHttpRequest){
	alert("調用了回調函數"+"1."+responseText+",2."+textStatus+",3."+XMLHttpRequest.readyState);
}

getJSON:

$.getJSON(String url,Function callback);
Url:提交地址
Callback:回調函數.


function ver1(){
	$.getJSON("testJson.json",callback);
}
function callback(data){
	alert(data.username[1]+data.userage);
}
testJson.json文件數據:
{"username":["GY","GY1"],"userage":"30"}
Json文件就是格式很是嚴格的純文本
相關文章
相關標籤/搜索