从松柏那转载的ajax类

常用的一段ajax的代码

下面的代码是我经常使用的一段代码,发上来以备忘
/*-----------------------------
ajax关键代码
将ajax封装成一个类
-----------------------------*/
function createAjax() {
    var xmlHttp = false;
    if (window.XMLHttpRequest) {
        //mozilla
        xmlHttp = new XMLHttpRequest();//ie6不支持XMLHttpRequest
        if (xmlHttp.overrideMimeType) xmlHttp.overrideMimeType("text/xml");
 
 
    }
    else if (window.ActiveXObject) {                
        var MSXML = ['MSXML2.XMLHTTP.5.0', 'Microsoft.XMLHTTP', 'MSXML2.XMLHTTP.4.0', 'MSXML2.XMLHTTP.3.0', 'MSXML2.XMLHTTP'];
        var i;
        for(i = 0; i < MSXML.length; i++){
            try{
                xmlHttp = new ActiveXObject(MSXML[i]);
                break;
            }
            catch(e){}
        }    
    }
    if (!xmlHttp) { alert("error! fail to create an ajax instance!"); return false; }
 
    this.rep = xmlHttp;
 
    this.sendData = function(method, url, asy, fun) {
        if (asy) {
            xmlHttp.onreadystatechange = function() {
                if (xmlHttp.readyState == 4 && xmlHttp.status == 200) {
                    fun(xmlHttp);
                }
            }
            if (method == "POST") {
                xmlHttp.open("POST", url, true);
                xmlHttp.setRequestHeader("Conent-Type", "application/x-www-form-urlencoded");
                xmlHttp.send(null);
            }
            else {
                xmlHttp.open("GET", url, true);
                xmlHttp.send(null);
            }
        }
        else {
            if (method == "POST") {
                xmlHttp.open("POST", url, false);
                xmlHttp.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
                xmlHttp.send(null);
            }
            else {
                xmlHttp.open("GET", url, false);
                xmlHttp.send(null);
            }
            return xmlHttp;
        }
    }
}

 

使用:

 

先实例一个对象:

   1: var ajax = new createAjax();
 
 
再写方法:
   1: ajax.sendData("POST", "articleEdit.aspx?RemoveAttachmentID=" + attachmentID + "&NewsID=" + newsID, true, function(xmlhttp) {
   2:     if (xmlhttp.responseText != "") {
   3:         
   4:     //to do something
   5:  
   6:     }
   7: })

posted on 2010-03-09 14:52  linbaba  阅读(157)  评论(0编辑  收藏  举报

导航