* XML 태그를 만들어 호출한 곳으로 전송하는 예제
test02.html --> server2.jsp ( 결과를 xml 태그로 만들어 전송 ) --> test02.html
오늘날짜출력 버튼을 클릭
< test02.html >
<!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=EUC-KR">
<title>Insert title here</title>
<script type="text/javascript">
var xhr=null;
function getXHR(){
//1. XMLHttpRequest객체 얻어오기
if(window.XMLHttpRequest){
//IE 7.0이상, Chrome, FireFox, safari,..
return new XMLHttpRequest();
}else{
//IE 하위버전(6.0이하)
return new ActiveXObject("Microsoft.XMLHTTP");
}
}
function getToday(){
//1. xhr객체 얻어오기
xhr=getXHR();
//2. callback메소드 설정
xhr.onreadystatechange=getServerDate;
//3. open설정(서버주소,..)
xhr.open("GET","server2.jsp",true);
//4. send메소드로 서버에 요청.
xhr.send(null);
}
//서버로 부터 응답이 오면 자동호출
function getServerDate(){
if(xhr.readyState==4 && xhr.status==200){
var xml=xhr.responseXML;
// firstChild는 객체. 그 값은 .nodeValue를 사용.
var tt=xml.getElementsByTagName("today")[0].firstChild.nodeValue;
var div=document.getElementById("today");
div.innerHTML=tt;
}
}
</script>
</head>
<body>
<input type="button" value="오늘날짜출력" onclick="getToday()"/>
<div id="today">
</div>
</body>
</html>
< server2.jsp >
<%@page import="java.io.PrintWriter"%>
<%@page import="java.util.Calendar"%>
<%@ page language="java" contentType="text/html; charset=EUC-KR"
pageEncoding="EUC-KR"%>
<%
//오늘날짜 구하기
Calendar gg=Calendar.getInstance();
//오늘날짜를 문자열에 담기
String str=gg.get(Calendar.YEAR) +"년" +
(gg.get(Calendar.MONTH)+1) +"월" +
gg.get(Calendar.DATE) + "일";
//xml로 응답하기위한 문자열객체 만들기
StringBuffer sb=new StringBuffer();
sb.append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>");
sb.append("<data>");
sb.append("<today>" + str +"</today>");
sb.append("</data>");
//xml로 응답하기위한 콘텐츠타입설정
response.setContentType("text/xml;charset=euc-kr");
//xml로 응답하기위한 스트림객체 얻어오기
PrintWriter pw=response.getWriter();
//xml로 클라이언트에 응답하기
pw.write(sb.toString());
pw.close();
%>
'WEB > Ajax Json' 카테고리의 다른 글
AJAX #06 JSON 관련 jar, javascript파일 (0) | 2013.05.04 |
---|---|
AJAX #05 JSON (0) | 2013.05.04 |
AJAX #04 댓글 달기 예제 (1) | 2013.05.04 |
AJAX #02 xml파일을 읽어서 화면에 표시하는 예제 (0) | 2013.05.04 |
AJAX #01 설명 (0) | 2013.05.04 |