All pastes #436329 Raw Edit

Someone

public javascript v1 · immutable
·published 2007-04-12 13:10 UTC
rendered paste body
var XMLHTTP_UNITIALISED = 0;var XMLHTTP_LOADING = 1;var XMLHTTP_LOADED = 2;var XMLHTTP_INTERACTIVE = 3;var XMLHTTP_COMPLETED = 4;function XMLHttpRequestWrapper(oObject){  var self = this;  this.oXMLHttp = oObject;  this.bHasBeenInteractive = false;  this.oXMLHttp.onreadystatechange = function() { self.handleReadyStatusChange(); };  this.fCallBack = null;}XMLHttpRequestWrapper.prototype.handleReadyStatusChange = function(){    if((this.oXMLHttp.readyState === XMLHTTP_INTERACTIVE))    {      this.bHasBeenInteractive = true;    }    if((this.oXMLHttp.readyState === XMLHTTP_COMPLETED))    {      if(this.bHasBeenInteractive === true)      {          this.fCallBack();      }      else      {          alert("request completed but, never went through the correct stages");      }    }}function test(){    var oDate = new Date();    ajaxRequest("/sandbox/test.php?time=" + oDate.getTime(), test2);}function test2(){    alert("test2()");}function ajaxRequest(sURL, fCallBack){    /*     * Author: Chris Miles     * Name: ajaxRequest     * Purpose: starts a AJAX request.     * Params: sURL - String - URL to fetch     *         fCallBack - Function - address of function to be executed                           upon completion of request.     * Returns: none     */        // need a clean way of creating new objects and cleaning them up    // possible a global area gaRequests[gaRequests.length] = request;        var oXMLHttp = getXMLHttpRequest();        var oXMLHttpWrap = new XMLHttpRequestWrapper(oXMLHttp);        if(oXMLHttpWrap.oXMLHttp !== null)    {        oXMLHttpWrap.fCallBack = fCallBack;        oXMLHttpWrap.oXMLHttp.open("GET", sURL, true);        oXMLHttpWrap.oXMLHttp.send(null);    }}function test3(){    var oEvent = window.event;    alert("e: " + oEvent);}function getXMLHttpRequest(){    /*     * Author: Chris Miles     * Name: getXMLHttpRequest     * Purpose: Gets a XMLHTTP Object for the current browser.     * Params: none     * Returns: oXMLHttp - Object - XMLHTTP object     */        var oXMLHttp = null;    if(typeof XMLHttpRequest !== "undefined")    {        oXMLHttp = new XMLHttpRequest();    }    else    {        try        {            oXMLHttp = new ActiveXObject("Msxml2.XMLHTTP");        }        catch(oException)        {            try            {                oXMLHttp = new ActiveXObject("Microsoft.XMLHTTP");            }            catch(oException)            {                alert("Error creating oXMLHttp");            }        }    }    return oXMLHttp;}