//XMLHttpRequest객체를 생성해 주는 getXMLHttpRequest()함수
function getXMLHttpRequest() {
if (window.ActiveXObject) {
try {
return new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
return new ActiveXObject("Microsoft.XMLHTTP");
} catch(e1) { return null; }
}
} else if (window.XMLHttpRequest) {
return new XMLHttpRequest();
} else {
return null;
}
}
//생성된 XMLHttpRequest객체를 저장할 전역변수
var httpRequest = null;
//XMLHttpRequest객체를 사용해서 지정한방식,지정한 URL, 첨부할 파라미터 값을 사용하여 웹 서버에 요청을 전송
function sendRequest(url, params, callback, method) {
httpRequest = getXMLHttpRequest();
var httpMethod = method ? method : 'GET';
if (httpMethod != 'GET' && httpMethod != 'POST') {
httpMethod = 'GET';
}
var httpParams = (params == null || params == '') ? null : params;
var httpUrl = url;
if (httpMethod == 'GET' && httpParams != null) {
httpUrl = httpUrl + "?" + httpParams;
}
httpRequest.open(httpMethod, httpUrl, true);
httpRequest.setRequestHeader( //컨텐트 타입 지정
'Content-Type', 'application/x-www-form-urlencoded');
httpRequest.onreadystatechange = callback; //readyState값이 바뀔 때 호출 될 콜백 함수 지정
httpRequest.send(httpMethod == 'POST' ? httpParams : null); //Http요청 방식이 'POST'이면 send()함수를 통해 파라미터 파라미터 전송
}
function getXMLHttpRequest() {
if (window.ActiveXObject) {
try {
return new ActiveXObject("Msxml2.XMLHTTP");
} catch(e) {
try {
return new ActiveXObject("Microsoft.XMLHTTP");
} catch(e1) { return null; }
}
} else if (window.XMLHttpRequest) {
return new XMLHttpRequest();
} else {
return null;
}
}
//생성된 XMLHttpRequest객체를 저장할 전역변수
var httpRequest = null;
//XMLHttpRequest객체를 사용해서 지정한방식,지정한 URL, 첨부할 파라미터 값을 사용하여 웹 서버에 요청을 전송
function sendRequest(url, params, callback, method) {
httpRequest = getXMLHttpRequest();
var httpMethod = method ? method : 'GET';
if (httpMethod != 'GET' && httpMethod != 'POST') {
httpMethod = 'GET';
}
var httpParams = (params == null || params == '') ? null : params;
var httpUrl = url;
if (httpMethod == 'GET' && httpParams != null) {
httpUrl = httpUrl + "?" + httpParams;
}
httpRequest.open(httpMethod, httpUrl, true);
httpRequest.setRequestHeader( //컨텐트 타입 지정
'Content-Type', 'application/x-www-form-urlencoded');
httpRequest.onreadystatechange = callback; //readyState값이 바뀔 때 호출 될 콜백 함수 지정
httpRequest.send(httpMethod == 'POST' ? httpParams : null); //Http요청 방식이 'POST'이면 send()함수를 통해 파라미터 파라미터 전송
}
'HTML/JS/CSS' 카테고리의 다른 글
[JS] 모바일 페이지 바로가기. (0) | 2011.06.13 |
---|---|
"지금 보고 있는 웹페이지 창을 닫으려고 합니다..." 안나타나게 하기 (0) | 2010.11.07 |
HTML5 실전 가이드. (PDF문서) (0) | 2010.09.27 |