//initialize needed; otherwise: var Ajax = new Object();

function Ajax(url) {
    this.url = url + '&UniqueId=' + new Date().getTime();
    this.initialize();
}
Ajax.prototype = {
    initialize: function() {
        if (window.XMLHttpRequest) {
            this.http = new XMLHttpRequest();
            if (this.http.overrideMimeType) this.http.overrideMimeType('text/xml');
        } else if (window.ActiveXObject) {
            this.http = new ActiveXObject('Msxml2.XMLHTTP');
        }
        if (!this.http) alert('Cannot create an XmlHttp instance.');
    },
    load: function() {
        this.http.open('GET', this.url, false);
        this.http.send(null);
        if (this.http.status == 200) return this.http.responseText;
        return 'Error ' + this.http.status + ': ' + this.http.responseText;
    },
    exec: function() {
        var self = this;
        this.http.open('GET', this.url, true);
        this.http.onreadystatechange = function() {
            if ((self.http.readyState == 4) && (self.http.status == 200) && (self.http.responseText)) alert(self.http.responseText);
        }
        this.http.send(null);
    }
}