国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > AJAX > 正文

Ajax簡單的異步交互及Ajax原生編寫

2024-09-01 08:28:08
字體:
來源:轉載
供稿:網友

一提到異步交互大家就會說ajax,仿佛ajax這個技術已經成為了異步交互的代名詞.那下面將研究ajax的核心對象!

利用ajax實現異步交互無非4步:

1.創建ajax核心對象

2.與服務器建立連接

3.向服務器發送請求

4.接收服務器響應的數據

看似神秘的異步交互當明確這4步后,也許在大家腦海里已經有了初步的思路了

首先我們創建ajax的核心對象,由于瀏覽器的兼容問題我們在創建ajax核心對象的時候不得考慮其兼容問題,因為要想實現異步交互的后面步驟都基于第一步是否成功的創建了ajax核心對象.

function getXhr(){// 聲明XMLHttpRequest對象var xhr = null;// 根據瀏覽器的不同情況進行創建if(window.XMLHttpRequest){// 表示除IE外的其他瀏覽器xhr = new XMLHttpRequest();}else{// 表示IE瀏覽器xhr = new ActiveXObject('Microsoft.XMLHttp');}return xhr;}// 創建核心對象var xhr = getXhr(); 

通過上述代碼我們已經成功的創建了ajax核心對象,我們保存在變量xhr中,接下來提到的ajax核心對象都將以xhr代替.

第二步就是與服務器建立連接,通過ajax核心對象調用open(method,url,async)方法.

open方法的形參解釋:

method表示請求方式(get或post)

url表示請求的php的地址(注意當請求類型為get的時候,請求的數據將以問號跟隨url地址后面,下面的send方法中將傳入null值)

async是個布爾值,表示是否異步,默認為true.在最新規范中這一項已經不在需要填寫,因為官方認為使用ajax就是為了實現異步.

xhr.open("get","01.php?user=xianfeng");//這是get方式請求數據 xhr.open("post","01.php");//這是以post方式請求數據 

第三步我們將向服務器發送請求,利用ajax核心對象調用send方法

如果是post方式,請求的數據將以name=value形式放在send方法里發送給服務器,get方式直接傳入null值

xhr.send("user=xianfeng");//這是以post方式發送請求數據 xhr.send(null);//這是以get方式 

第四步接收服務器響應回來的數據,使用onreadystatechange事件監聽服務器的通信狀態.通過readyState屬性獲取服務器端當前通信狀態.status獲得狀態碼,利用responseText屬性接收服務器響應回來的數據(這里指text類型的字符串格式數據).后面再寫XML格式的數據和大名鼎鼎的json格式數據.

xhr.onreadystatechange = function(){               // 保證服務器端響應的數據發送完畢,保證這次請求必須是成功的   if(xhr.readyState == 4&&xhr.status == 200){      // 接收服務器端的數據      var data = xhr.responseText;       // 測試       console.log(data);   } };            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桦川县| 兴安盟| 汽车| 许昌县| 通州市| 桂平市| 孝感市| 五河县| 呈贡县| 临颍县| 石渠县| 大兴区| 鄂伦春自治旗| 林口县| 登封市| 双峰县| 藁城市| 灵武市| 甘德县| 澄江县| 石渠县| 柏乡县| 莎车县| 扶沟县| 微博| 那坡县| 昌平区| 仪征市| 水城县| 抚松县| 兰考县| 竹溪县| 万全县| 枣庄市| 西昌市| 武邑县| 尉犁县| 宜昌市| 屏东县| 郧西县| 临湘市|