function Ajax(){ this.xhr = null; this.initialize(); } Ajax.prototype = { initialize: function() { try { this.xhr = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { this.xhr = new ActiveXObject("Microsoft.XMLHTTP"); } catch (e2) { } } if(this.xhr == null) { try { this.xhr = new XMLHttpRequest(); }catch(E){throw E;} } }, execute: function(obj) { var url = obj['url']; var query = obj['query']; var method = obj['method'] || 'get'; var onCompleted = obj['onCompleted'] || null; if(typeof onCompleted == 'function') { var _this = this; this.xhr.onreadystatechange = function() { if(_this.xhr.readyState == 4) onCompleted(_this.xhr); } } if(method.toLowerCase() == 'get') { this.xhr.open("GET", url + "?" + query, true); this.xhr.send(null); } else { this.xhr.open("POST", url, true); this.xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); this.xhr.setRequestHeader("Content-length", query.length); this.xhr.send(query); } } }