1. 程式人生 > >原生ajax POST請求

原生ajax POST請求

話不多說,看程式碼

      var data = {//這種格式是需要轉成jsonstring的
                    action:action,
                    diyid:diyid,
                    do : _do,
                    dede_fields:dede_fields,
                    dede_fieldshash:dede_fieldshash,
                    city:escape(city),
                    area:area,
                    model:escape(room+sitting+bathroom+kitchen+balcony),
                    phone:phone
                }
                var data = 'action='+action+'&do='+_do+'&dede_fields='+dede_fields+'&dede_fieldshash='+dede_fieldshash+'&city='+city+'&area='+area+'&diyid='+diyid+'&model='+room+sitting+bathroom+kitchen+balcony+'&phone='+phone;
                
                var XHR=null;  
                if (window.XMLHttpRequest) {  
                    // 非IE核心  
                    XHR = new XMLHttpRequest();  
                } else if (window.ActiveXObject) {  
                    // IE核心,這裡早期IE的版本寫法不同,具體可以查詢下  
                    XHR = new ActiveXObject("Microsoft.XMLHTTP");  
                } else {  
                    XHR = null;  
                }  
                
                if(XHR){  
                    XHR.open("POST", "../plus/diy.php",true);  
                    XHR.onreadystatechange = function () {  
                        // readyState值說明  
                        // 0,初始化,XHR物件已經建立,還未執行open  
                        // 1,載入,已經呼叫open方法,但是還沒傳送請求  
                        // 2,載入完成,請求已經發送完成  
                        // 3,互動,可以接收到部分資料  
                
                        // status值說明  
                        // 200:成功  
                        // 404:沒有發現檔案、查詢或URl  
                        // 500:伺服器產生內部錯誤  
                        if (XHR.readyState == 4 && XHR.status == 200) {  
                            // 這裡可以對返回的內容做處理  
                            // 一般會返回JSON或XML資料格式  
                            console.log(XHR.responseText);  
                            // 主動釋放,JS本身也會回收的  
                            XHR = null;  
                        }  
                    }; 
                    // XHR.setRequestHeader("Content-type","application/json");  
                    XHR.setRequestHeader("Content-type","application/x-www-form-urlencoded"); 
                    // XHR.send(JSON.stringify(data));  //如果是物件格式的資料就要轉換成jsonstring  
                    XHR.send(data);
                }  
            });

 好久不用原生了,用起來還是有些不習慣呢,哈哈哈