js事件 Ajax基礎

2021-07-24 02:51:34 字數 1833 閱讀 9313

所有現代瀏覽器均支援 xmlhttprequest 物件(ie5 和 ie6 使用 activexobject)。 

建立xmlhttprequest物件:

var ajax = new xmlhttprequest();
ie5和ie6使用activexobject物件:

var ajax = new activexobject("microsoft.xmlhttp");
相容寫法:

2.傳送請求

將請求傳送到伺服器,使用 xmlhttprequest 物件的 open() 和 send() 方法:

ajax.open(method,url,async);

//連線伺服器

ajax.send();//傳送請求

open()方法接收3個引數,第乙個引數method代表請求的型別,有get和post兩種。第二個引數url是請求檔案的路徑。第三個引數代表非同步(true)或同步(false)處理。

get與post:

與 post 相比,get 更簡單也更快,並且在大部分情況下都能用。 

然而,在以下情況中,請使用 post 請求:

3.伺服器響應

如需獲得來自伺服器的響應,請使用 xmlhttprequest 物件的 responsetext 或 respon***ml 屬性。

responsetext 屬性

如果來自伺服器的響應並非 xml,使用 responsetext 屬性。responsetext 屬性返回字串形式的響應。

return ajax.responsetext;
如果來自伺服器的響應是 xml,而且需要作為 xml 物件進行解析,需要使用 respon***ml 屬性。

return ajax.respon***ml;
4.readystate

onreadystatechange 事件

當請求被傳送到伺服器時,我們需要執行一些基於響應的任務。每當 readystate 改變時,就會觸發 onreadystatechange 事件。

readystate 屬性存有 xmlhttprequest 的狀態資訊,它的值從0到4發生變化。

status屬性表示請求的狀態:當 readystate 等於 4 且status為 200 時,表示響應已就緒。

ajax.onreadystatechange=function

()else

}

function

ajax

(url,fnsucc,fnfail)else

ajax.open('get',url,true);//鏈結伺服器

ajax.send();//傳送請求

//接收返回

ajax.onreadystatechange=function

()else}}

ajax函式的使用:

ajax('***.txt?t='+new

date().gettime(),function

(str),function

());

其中的url位址後面加上?t=new date().gettime()用來阻止瀏覽器的快取。

JS 事件基礎

1.什麼是事件 事件分為兩部分 element.event dom0級事件繫結 addeventlistener dom2級事件繫結 element.addeventlistener這個屬性是定義在當前元素所屬eventtarget這個類的原型上的 事件物件及相容處理 onclick的e 原型鏈 m...

JS基礎 事件物件

onmousemove 該事件將會在滑鼠在元素中移動時被觸發 事件物件 當事件的響應函式被觸發時,瀏覽器每次都會將乙個事件物件作為實參傳遞進響應函式,在事件物件中封裝了當前事件相關的一切資訊,比如 滑鼠的座標鍵盤哪個按鍵被按下滑鼠滾輪滾動的方向。在ie8中,響應函式被觸發時,瀏覽器不會傳遞事件物件,...

js基礎 事件物件

當事件的響應函式被觸發時,瀏覽器每次都會將乙個事件物件作為實參傳遞進響應函式中。在事件物件中封裝了當前事件相關的一切資訊。比如 滑鼠的座標,鍵盤哪個按鍵被按下 滑鼠滾輪滾動的方向。事件物件.clientx可以獲取滑鼠指標的水平座標。獲取滑鼠在當前可見的視窗的座標 獲取的偏移量是相對於當前瀏覽器可見視...