각종 자스로 값 넘기기~~~
---------------
셀렉트값은?


document.form.item1.options[form.item1.selectedIndex].value;

-----------------------연린창에 값넘기기(부모창)

function push() { 
window.opener.form.x.value =real_x+mapx;
window.opener.form.y.value =real_y+mapy;
window.opener.form.x1.value=x1;
window.opener.form.x2.value=x2;
window.opener.form.x3.value=x3;
window.opener.form.y1.value=y1;
window.opener.form.y2.value=y2;
window.opener.form.y3.value=y3;

window.close();   


}
-----------------------링크 클릭값 넘기기
function delete1(value){
form.no.value=value;
document.form.action= "./basket_delete.php";
document.form.submit();
}

<a href=# class=text1 onclick=delete1(value); value=$row[no]>클릭</a>


-----------------------form값을 2개 이상 페이지로 전송할경우
<input type=button value="등록"
onclick="action='./login1.php';submit();">


-----------------------버튼클릭시 값을 줄경우
<input type=button value수정" onclick="javascript:location.href='./login.php?mode=input&mode2=hahaha'">



-----------------------자바스크립으로 전송버튼 누르는경우
function zipchange1(){
document.form.action= "./login.php";
document.form.submit();
}

-----------------------값전송하기
<script>
function a(){
bbb="kim";
ccc="kim2";
ddd="kim3";
location.href ="test1.htm?Bcode="+bbb+"&Ccode="+ccc;
}
</script>

<input type=button value=클릭 onclick="a();">
-----------------------타겟으로 값을 넘길경우1
function itemchange4(){
document.form.item4.options[form.item4.selectedIndex].value;
document.form.action= "./top.php";
document.form.target= "top";            //타켓사용
document.form.submit();
}

-----------------------타겟으로 값을 넘길경우2
<form method="get" name="form" target="xxxx">


-----------------------부모창 리로드 값 넘길경우 ㅋㅋ --+(새로고침하기)
<script>
//window.opener.location.reload();
opener.parent.location.reload();
window.close();
</script>

-----------------------프레임 나눌경우 값주기 (확인안해봤는데..;;)
<frameset>
<frame src=top.html?receive=$receive>
...
</frameset>



----------------------걍~ 값넘겨줄때

<script>
location.href='abc.php?a=1&b=1&c=<?=1?>';
</script>

 

블로그 이미지

왕왕왕왕

,

먼저 다음 페이지 이동 특성들을 미리 알아볼 필요가 있습니다

JSP에서는 페이지 이동시 다음 4가지 정도의 방법이 있습니다

 

 JavaScript를 이용

window.open, location.href, location.replace 등을 이용할수 있습니다

 

login_process.jsp

<% if (a == null) { %>

      <script>location.href = "admin.jsp"; </script>

<% } else { %>

      <script>alert('권한이 없어요!'); window.history.back(); </script>

<% } %>

         

특징적인부분은 브라우져의 주소창이 변경되며

(이말은 즉슨 클라이언트가 다시 admin.jsp를 서버에 요청한다는 말입니다)

login_process.jsp 에서 jsp가 다 실행되고 브라우져에 out put된 html 및 javascript들만으로

실행된 코드들이라는 것입니다

 

② response.sendRedirect를 이용

login_process.jsp

<% if (a == null) {

          response.sendRedirect("admin.jsp");

     } else {

          response.sendRedirect("login.jsp");

     }

 

     a = "test 입니다";

     System.out.println(a);

%>

 

이 코드에서 a가 출력될까요 안될까요?

출력 됩니다.

sendRedirect가 되더라도 밑에 jsp 코드들은 모두 실행 된다는 말입니다

response.sendRedirect는 기본적으로 모든 로직들을 다 처리한 후 코드 맨 마지막 부분에

사용하는 것이 올바른 방법입니다

만약 그렇지 못한 경우는 response.sendRedirect 다음 바로 return; 이라는 코드를 집어 넣어야 합니다

 

response.sendRedirect은 HTTP 헤더정보를 변경하여 redirect시키기 때문에 역시 브라우져의 주소창이 변경되며 sendRedirect가 실행되기전 html이나 javascript로 out put되는 코드들은 모두 실행되지 않습니다.

 

③ forward 이용

jsp 태그의 <jsp:forward> 나 servlet의 RequestDispatcher.forward 를 이용할수 있습니다

 

login_process.jsp

<% if (a == null) { %>

          <jsp:forward page="admin.jsp"/>

<% } else { %>

          <jsp:forward page="login.jsp"/>

<% }

 

     a = "test 입니다";

     System.out.println(a);

%>

 

그럼 위의 코드의 경우 a가 출력 될까요 안될까요?

정답은 출력 안됩니다. 바로 forward 되어 버립니다.

클라이언트로 응답주지 않고 바로 서버측에서 admin.jsp로 이동하기 때문에

주소창이 바뀌지 않고 그로인해 브라우져에 출력되는 응답속도 또한 사용자가 보기에는

응답이 빠른 장점이 있습니다

 

하지만 forward 이후 JSP 코드들이 실행되지 않는것 사실이지만 만약 finally절이 있는경우

finally절은 실행 됨으로 확실히 알아둡시다.

 

④ meta 태그 이용

마지막으로 meta 태그를 이용할 수도 있습니다.

 

<META http-equiv=refresh content="0;url=admin.jsp">

 

즉 요약하자면..

페이지 이동 방법이 여러가지가 있습니다.

그 특성들을 잘 알고 올바르게 사용하여야 합니다.

'JAVA > JSP' 카테고리의 다른 글

JSP 구구단예제  (0) 2015.08.12
JSP Forward,Param  (0) 2015.08.12
JSP 액션 Include,param  (0) 2015.08.12
JSP include 지시어  (0) 2015.08.12
Jsp 주석테스트  (0) 2015.08.12
블로그 이미지

왕왕왕왕

,

<!DOCTYPE html>

<html>

<head>

<meta charset="EUC-KR">

<title>Insert title here</title>

<script type="text/javascript">

function show() {

var str = form1.edt.value;

var mywindow = window.open("", "", "width=200, height = 300");

mywindow.document.write(str);


}

function Clear(){

form1.edt.value = "";

}


</script>

</head>

<body>

<form name="form1">

<input type="button" value="웹브라우저로 보기" onclick="show()"> <input

type="button" value="새 문서" onclick="Clear()"> <input

type="reset" value="새 HTML작성"></br>

<textarea rows="10" cols="50" name="edt">

<html>

<head>

<meta charset="EUC-KR">

<title>Insert title here</title>

</head>

<body>

<h1>첫번째 문서</h1>

</body>

</html>


</textarea>

</form>

</body>

</html>

블로그 이미지

왕왕왕왕

,

<!DOCTYPE html>

<html>

<head>

<meta charset="EUC-KR">

<title>Insert title here</title>

</head>

<body>

<script type="text/javascript">

document.fgColor = "blue";

document.bgColor = "pink";

document.linkColor = "black";

document.vlinkColor = "yellow";

document.alinkColor = "red";

document.write("<h3>title : "+document.title+"</br></br>" );

document.write("fgColor : "+document.fgColor+"</br></br>" );

document.write("bgColor : "+document.bgColor+"</br></br>" );

document.write("linkColor : "+document.linkColor+"</br></br>" );

document.write("vlinkColor : "+document.vlinkColor+"</br></br>" );

document.write("alinkColor : "+document.alinkColor+"</br></br>" );

document.write("홈페이지 마지막갱신일 : "+document.lastModified+"</br></br>" );

document.write("URL주소 : "+document.URL+"</br></br>" );

</script>

</body>

</html>

블로그 이미지

왕왕왕왕

,

<!DOCTYPE html>

<html>

<head>

<meta charset="EUC-KR">

<title>Insert title here</title>

</head>

<script type="text/javascript">

function textUpper(){

var str = fn.text1.value;

fn.text2.value = str.toUpperCase();

}

</script>

<body>

<form name = "fn">

<table bgcolor="yellow" border="1" width="50%" align="center">

<tr>

<td align="center">소문자입력 :</td>

<td><input type="text" name="text1"><input

type="button" name="text1Btn" value="변환하기" onclick="textUpper()"></td>

</tr>

<tr>

<td align="center">변환 대문자 출력 :</td>

<td><input type="text" name="text2" size="30"></td>

</tr>

<tr>

<td colspan="2" align="center">소문자로 데이터를 입력하세요 -> 대문자로 변경됩니다.</td>

</tr>

</table>

</form>

</body>

</html>

블로그 이미지

왕왕왕왕

,

<!DOCTYPE html>

<html>

<head>

<meta charset="EUC-KR">

<title>Insert title here</title>

<style>

input {

width: 200px;

background-color: gray;

}

</style>

</head>

<body>

<table align="center">

<tr>

<td><input type="button" value="첫번째버튼"

onmouseover="yellowBtn(this)" onmouseout="grayBtn(this)"></td>

</tr>


</table>

</br>

</br>

</br>

<table align="center">

<tr>

<td><input type="button" value="두번째버튼"

onmouseover="redBtn(this)" onmouseout="grayBtn(this)"></td>

</tr>


</table>

<script type="text/javascript">

function yellowBtn(e) {

e.style.background = "yellow";

}

function redBtn(e) {

e.style.background = "red";

}

function grayBtn(e) {

e.style.background = "gray";

}

</script>


</body>

</html>

블로그 이미지

왕왕왕왕

,

<!DOCTYPE html>

<html>

<head>

<meta charset="EUC-KR">

<title>Insert title here</title>

<script type="text/javascript">

imgArr = new Array();


cnt = 1;

for (i = 1; i < 4; i++) {

imgArr[i] = "a" + i + ".png";

}


function imgChange(E) {


if (E.target.name == "btn1") {

if (cnt == 1)

cnt = 3;

else

cnt--;


document.img3.src = imgArr[cnt];


} else if (E.target.name == "btn2") {


if (cnt == 3)

cnt = 1;

else

cnt++;


document.img3.src = imgArr[cnt];

} else if (E.target.name == "firstBtn") {

cnt = 3;

document.img3.src = imgArr[cnt];

} else if (E.target.name == "lastBtn") {

cnt = 2;

document.img3.src = imgArr[cnt];

}


}


function imgAuto() {


setInterval(function() {

document.img3.src = imgArr[cnt];

cnt++;

if (cnt > 3)

cnt = 1;

}, 100);

}


document.onclick = imgChange;

</script>

</head>

<body bgcolor="black">

<form>

<center>

<h3>

<font color="white">사진 감상</font>

</h3>

</center>

<input type="button" name="firstBtn" value="<<"> <input type="button" name="btn1" value="<"> <input type="button" name="btn2"

value=">"> <input type="button" name="lastBtn" value=">>"> <input type="button" name="autoBtn" value="auto" onclick="imgAuto()">

<input type=button name=simabuttonviewsource value="Stop" onClick='window.location.reload()'> </br> <img src="a3.png" name="img3">

</form>

</body>

</html>



블로그 이미지

왕왕왕왕

,

<html>

<head>

    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8"/>

     

    <script>

        function eventHandler(e){

            var el = e.srcElement ? e.srcElement : e.target;

            alert("클릭한 태그이름 : " + el.tagName);

        }

        document.onclick = eventHandler;

    </script>

</head>

<body>

    <h1>헤더1</h1>

    <h2>헤더2</h2>

</body>

</html>



블로그 이미지

왕왕왕왕

,