하나의 Ajax 클래스

프로그램 코드:function Ajax(sUrl,sRecvTyp,sQueryString,oResultFunc){this.Url=sUrl;this.QueryString = sQueryString;this.XmlHttp = this.createXMLHttpRequest();if (this.XmlHttp == null) {alert("erro");return;}var objxml = this.XmlHttp;objxml.onreadystatechange = function (){Ajax.handleStateChange(objxml,sRecvTyp,oResultFunc)};}Ajax.prototype.createXMLHttpRequest = function() {try { return new ActiveXObject("Msxml2.XMLHTTP"); } catch(e) {}try { return new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) {}try { return new XMLHttpRequest(); } catch(e) {}return null;}Ajax.prototype.createQueryString = function () {var queryString = this.QueryString;return queryString;}Ajax.prototype.get = function () {sUrl = this.Url;var queryString = sUrl+"?timeStamp=" + new Date().getTime() + "&" + this.createQueryString();this.XmlHttp.open("GET",queryString,true);this.XmlHttp.send(null);}Ajax.prototype.post = function() {sUrl = this.Url;var sUrl = sUrl + "?timeStamp=" + new Date().getTime();var queryString = this.createQueryString();this.XmlHttp.open("POST",sUrl,true);this.XmlHttp.setRequestHeader("Content-Type","application/x-www-form-urlencoded");this.XmlHttp.send(queryString);}Ajax.handleStateChange = function (XmlHttp,sRecvTyp,oResultFunc) {if (XmlHttp.readyState == 4) {if (XmlHttp.status == 200) {oResultFunc(sRecvTyp?XmlHttp.responseXML:XmlHttp.responseText);} else{alert("요청 한 페이지 에 이상 이 있 습 니 다.");}}사용 방법:var classAjax=new Ajax(sUrl,sRecvTyp,sQueryString,oResultFunc);classAjax.post();//post 방식 으로 데 이 터 를 보 냅 니 다 classAjax.get();/get 방식 으로 데 이 터 를 보 냅 니 다//sUrl 주소//srcvTyp 받 아들 이 는 데이터 형식:0 은 xml 1 은 text//oResultFunc 결과 처리 함수응용 인 스 턴 스:var ajax 1=new Ajax("1.asp",0,"id="+id,bacal);ajax1.post();function bacal(rexm){/데이터 처리 함 수 를 되 돌려 줍 니 다.}

좋은 웹페이지 즐겨찾기