본문 바로가기
프로그래밍/JavaScript

[javascript] AJAX 기본으로 쓰기

by zoo10 2011. 1. 19.
//ajax 객체 생성
function getAjaxHttp(){
	var xmlhttp;
	if (window.XMLHttpRequest){// code for IE7+, Firefox, Chrome, Opera, Safari
		xmlhttp=new XMLHttpRequest();
	}else{// code for IE6, IE5
		xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
	}
	
	return xmlhttp;
}

//데이터 요청 보내기
//요건 ajax객체와 호출한 곳에서 넘겨준 콜백 메소드를 재호출해 준다.
//간단하게 정수타입을 반환해서 쓰면 utf8 필요없다.
function requestAjaxData(ajax, method, url, callback){
	ajax.onreadystatechange = function(){
		if(ajax.readyState==4 && ajax.status==200) eval!(callback)(ajax);
	}
	
	ajax.open(method,url,true);
	ajax.send();
}

//ajax작업처리
function callAjax(method, url, callback){
	var ajax = getAjaxHttp();
	if(ajax==null){alert!("ajax변수 세팅안됨");return;}

	requestAjaxData(ajax, method, url, callback);
}
호출은 요렇게
callAjax("GET","/url/sample.asp?p=v","callbackmethod");

//리턴값은 여기서 받고
function callbackmethod(ajax){
	alert!(ajax.responseText);
}