Ajax學習筆記_01
阿新 • • 發佈:2018-04-16
通過 xmlhttp orm imp 函數 java AD 交互 thead
- Ajax是一種方法,而不是一種編程語言。語言的話,用js就足夠了。
- 首先需要創建一個XMLHttpRequest對象,這個對象的方法包括:
- abort();
- getAllResponseHeaders()
- getResponseHeader(‘header’)
- open(‘method‘,“url”);
- send(content)
- setRequestHeader("header",“value”)
- 所有這些方法中,用的比較多的是open和send.
- 除此之外,XMLHttpRequest對象還有很多屬性,包括:
- onreadystatechange
- readyState
- responseText
- responseXML
- status
- statusText
- 在使用XMLHttpRequest對象之前,需要判斷一下瀏覽器的類型,通過判斷是否支持ActiveX控件,是的話,則是IE瀏覽器,否的話,直接本地實例化一個對象。
1 var xmlHttp; 2 function createXMLHttpRequest(){ 3 if(window.ActiveXObject){ 4 xmlHttp=new ActiveXObject(‘Microsoft.xmlHttp‘) 5 }6 else if (window.XMLHttpRequest){ 7 xmlHttp=new XMLHttpRequest(); 8 } 9 }
- 下面是一個小的展示,關於ajax的異步如何實現的
1 <!DOCTYPE html> 2 <html xmlns="http://www.w3.org/1999/xhtmL"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>Ajax_01</title> 6<script type="text/javascript"> 7 var xmlHttp; 8 function createXMLHttpRequest(){ 9 if(window.ActiveXObject){ 10 xmlHttp=new ActiveXObject(‘Microsoft.xmlHttp‘) 11 } 12 else if (window.XMLHttpRequest){ 13 xmlHttp=new XMLHttpRequest(); 14 } 15 } 16 function startRequest(){ 17 createXMLHttpRequest();//創建XMLHttpRequest對象 18 xmlHttp.onreadystatechange=handleStateChange;//onreadystatechange表示每次該對象的狀態變化的時候,都會調用handleStateChange函數。 19 xmlHttp.open(‘GET‘,"simpResponse.xml",true);//調用simpResponse.xml文檔, 20 xmlHttp.send(null);//不給服務器發送信息 21 } 22 function handleStateChange(){ 23 if(xmlHttp.readyState==4){//(完成)響應內容解析完成,可以在客戶端調用了 24 if(xmlHttp.status==200){//http的狀態碼為200時,表示正常交互完成 25 alert("the server replied with:"+xmlHttp.responseText);//彈出消息框,調用出xmlHttp對象的的文檔內容 26 } 27 } 28 } 29 </script> 30 </head> 31 <body> 32 <form action="=#"> 33 <input type="button" value="PRESS" onclick="startRequest()"> 34 </form> 35 </body> 36 </html>
比如說,我的目的是通過點擊button來調用startRequest()函數。那麽在這個函數裏面,可以看到每一步的註釋。
Ajax學習筆記_01