ajax 간단 한 프레임 워 크

인터넷 자 료 를 참조 하 였 습 니 다. ajax 에 대한 깊이 가 없 기 때문에 이 프레임 워 크 는 responseText 응답 내용 만 가 져 옵 니 다.
참고 자료
http://commandos.blog.51cto.com/154976/115723
--------------------------myajax.js---------------------



function $( elementId ) { 
  return document.getElementById(elementId).value; 
} 


/* 
*          ,  Ajax   
*/ 
function getAjaxObject() { 
        var xmlHttpRequest; 
        //       XMLHttpRequest       javascript   
        if(window.XMLHttpRequest){ 
        xmlHttpRequest = new XMLHttpRequest(); 
        }else if(window.ActiveXObject){  //        ActiveX   
        try{ 
          //       ActiveXObject         XMLHttpRequest   
            xmlHttpRequest = new ActiveXObject("Microsoft.XMLHTTP");  
        }catch(e){ 
            try{ 
              //       ActiveXObject         XMLHttpRequest   
              xmlHttpRequest = new ActiveXObject("Msxml2.XMLHTTP"); 
              }catch(e){} 
        } 
        } 
        if ( !xmlHttpRequest ) { 
          alert("  Ajax    ,          "); 
        } 
        return xmlHttpRequest; 
} 

/* 
*           
*  method get/post
*  url           
*  data         
*  yourfunction       
*/ 
function sendRequestByAjax(method, url, data, yourfunction) { 
  //    Ajax   
  request = getAjaxObject(); 
  //         
    request.onreadystatechange = function(){
    	onreadystatechange(yourfunction);
    }; 
  request.open(method, url, true);  //  true         false         
  //         
  if ( "get" == method.toLowerCase() ) { 
    //    GET       
    var urls = url.split("?"); 
    if ( urls[1] == "" || typeof(urls[1]) == "undefined" ) { 
      url = urls[0] + "?" + data; 
    } else { 
      url = urls[0] + "?" + urls[1] + "&" + data; 
    } 
    data = null;  //   for GET method,request    
     
  } else if ( "post" == method.toLowerCase() ){ 
    //    POST       
          request.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); 
      } 
  request.send(data); 
}

/* 
*     
*          responseText         yourfunction()
*/ 
function onreadystatechange(yourfunction){
if (request.readyState == 4){
	if (request.status == 200){  	
	var responseText=request.responseText;	 
	yourfunction(responseText);
		}
   }  
}
}

다음은 테스트 파일 testajax. jsp 와 date. jsp 입 니 다.
-------------------------------testAjax.jsp------------------------
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript" language="javascript"  src="myajax.js" ></script> 
<title>Insert title here</title>
<script language="javascript">
	function getResponseText(responseText){	//      
		alert(responseText);
	}
	function testAjax(){
		sendRequestByAjax('post','date.jsp',null,getResponseText);
	}
</script>
</head>
<body>
       <input type="button" name="button" id="button" value="  "  onclick="testAjax()">
</body>
</html>

-----------------------date.jsp-----------------------
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@page import="java.io.PrintWriter"%>
<%
String count="your get it";
out.println(count);
%>

좋은 웹페이지 즐겨찾기