Ajax Di 打開方式


Javascript

一般情況下,直接使用原生 Javascript 的代碼是通用的,所以備個份(部分庫的代碼在某些情況下會產生俺不能理解的錯誤)

// 創建 XMLHttpRequest 對象
var xmlHttpRequestObject = null;
if (window.ActiveXObject) {
    xmlHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
} else {
    xmlHttpRequestObject = new XMLHttpRequest();
}
var url = "target.html"; // 目標路徑
var data = ""; // 傳輸的數據
xmlHttpRequestObject.open("POST" , url , true); // 第三個參數默認 true 異步 false 同步
xmlHttpRequestObject.setRequestHeader("Content-Type" , "application/x-www-form-urlencoded");
xmlHttpRequestObject.onreadystatechange = function() {
    // readyState產生變化時需要運行
    if (xmlHttpRequestObject.readyState == 4 && xmlHttpRequestObject) {
        var res = xmlHttpRequestObject.responseText;
        var jsonObject = eval("("+res+")");
    }
}
xmlHttpRequestObject.send(data);

原生JS使用XMLHttpRequest對象進行異步通信,下面為該對象的主要屬性與方法

——屬性:onreadystatechange
在readyState變化時運行的方法

——屬性:readyState
狀態描述
0 請求未初始化(在調用 open() 之前)
1 請求已提出(調用 send() 之前)
2 請求已發送(這里通常可以從響應得到內容頭部)
3 請求處理中(響應中通常有部分數據可用,但是服務器還沒有完成響應)
4 請求已完成(可以訪問服務器響應并使用它)

——屬性:responseText
由服務器返回的數據

——方法:open(type,url,true/false)
初始化請求:第一個參數為請求類型,第二個參數為請求路徑,第三個參數為是否異步傳輸

——方法:send(data)
發送請求:data為傳輸的數據

——方法:setRequestHeader("header","value");
設置請求頭,Send之前

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容