==========================================
JavaScript에서 세션에 값 세팅 하기 ==========================================
임시 JSP 파일을 만들어 그 JSP에 자바스크립트에서 값을 넘겨 처리하는 방법도 있겠지만 AJAX를 통해 기능을 구현해 보도록 하겠습니다.
1. 먼저 ajax.js 파일을 만듭니다.
/** minder97@naver.com **
*
* 사용방법
* 1. 사용하고자 하는 HTML에 이 파일을 include한다
*
* <script language="javascript" src="경로/ajax.js"></script>
*
*
* 2. HTML에 div 선언
*
* <div id='test'></id>
*
*
* 3. script내에서 forwardPage() function 호출하기 (매개변수는 필요에 따라 입력한다. 매겨변수 id만 필수)
*
* forwardPage( [div의 id], [서블릿 또는 jsp의 경로], [파라메터값], [액션방법(POST or GET)] )
*
*
* 예)
* forwardPage('test');
* => 'test'라는 div에 현재 경로의 "test.jsp"파일을 "GET" 방법으로 파라메터없이 포워딩
* forwardPage('test','/action.do?cmd=test');
* => 'test'라는 div에 "/action.do?cmd=test"을 "GET" 방법으로 파라메터없이 포워딩
* forwardPage('test','/action.do?cmd=test','param1=val1¶m2=val2');
* => 'test'라는 div에 "/action.do?cmd=test"을 "GET" 방법으로 'param1=val1¶m2=val2' 파라메터와 같이 포워딩
* forwardPage('test','/action.do?cmd=test','param1=val1¶m2=val2','POST');
* => 'test'라는 div에 "/action.do?cmd=test"을 "POST" 방법으로 'param1=val1¶m2=val2' 파라메터와 같이 포워딩
*
*
*/
function forwardPage(id, action, param, method) {
//default setting..
if(action==undefined) action = id+".jsp";
if(param==undefined) param=null;
if(method==undefined) method="GET";
//start forwarding..
//1)
var xmlhttp = getXmlHttpRequest();
//2)
xmlhttp.open(method, action, true);
//3)
xmlhttp.onreadystatechange = function(){
if(xmlhttp.readyState == 4){
if(xmlhttp.status == 200){
document.getElementById(id).innerHTML = xmlhttp.responseText;
}else{
document.getElementById(id).innerHTML = "loading..failed...";
}
}
}
//4)
xmlhttp.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
//5)
xmlhttp.send(param);
}
function getXmlHttpRequest(){
var xmlhttp = false;
if(window.XMLHttpRequest)
xmlhttp = new XMLHttpRequest();
else
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
return xmlhttp;
}
2. JSP 파일
자바스크립트 부분에 다음 한줄을 넣습니다.
uid라는 자바스크립트 변수에 있는 값을 세션에 setting 할려고 합니다.
forwardPage('tmp','/jsp/tmp.jsp','userid='+uid);
3. tmp.jsp
<%
session.setAttribute("userid", userid
%>
참고로 ajax.js 파일은 최경진씨에게 조언을 구한겁니다.
평일주간[100%환급과정]
(8/04)C#4.0,WinForm,ADO.NET(8/04)자바기초JDBC,Servlet/JSP까지
(8/04)Spring,MyBatis,Hibernate실무과정
(8/11)PL/SQL,ORACLE HINT,TUNING
(8/11)SQL기초에서 Schema Object까지
(8/11)안드로이드개발자과정
(8/11)채용예정교육
평일야간[개인80%환급]
(8/04)웹퍼블리싱 마스터
(8/05)JSP,jQUERY,Spring,MyBatis
(8/06)Spring3.X, MyBatis, Hibernate
(8/08)C#,Network,ADO.NET,ASP.NET
(8/11)SQL기초에서실무까지
(8/11)안드로이드개발자과정
(8/28)자바JSP,jQuery,Spring,MyBatis
주말주간[개인80%환급]
(8/02)Spring3.X, MyBatis, Hibernate
(8/02)C#,ASP.NET마스터
(8/02)웹퍼블리싱 마스터
(8/02)SQL초보에서 Schema Object까지
(8/09)SQL기초에서실무까지
(8/09)안드로이드개발자과정
(8/09)자바JSP,Ajax,jQuery,Spring,MyBatis
(8/23)JAVA,Network&WEB&Framework
주말야간[개인80%환급](18:30~22:20)
(8/02)JAVA,Network&WEB&Framework
댓글 없음:
댓글 쓰기