본문 바로가기
STUDY/JSP

Jsp 4일차 - 이벤트

by Anne of Green Galbes 2019. 2. 14.
1. 이벤트(event)

사용자가 무언가를 클릭하거나, 특정한 키를 누르는 등의 상호작용이 발생할 때 이벤트가 일어난다.
사용 : on이벤트명
○자주 사용하는 이벤트

마우스 이벤트

 click

 마우스 버튼 클릭

 mousedown

 마우스 클릭 버튼을 누름

 mouseup

 미우스 클릭 버튼을 뗌

 mouseover

 마우스 포인터가 요소 위에 올라감

 mouseout

 마우스 포인터가 요소 밖으로 벗어남

 mousemove

 마우스 포인터가 움직임

 키보드 이벤트

 keydown

 키를 누르는 순간 

 keyup

 키를 눌렀다 떼는 순간

 keypress

 키를 눌러 문자가 연결되었을 때
 화면에 글자가 완성되는 경우만

 폼(form) 이벤트

 submit

 전송 버튼을 누름
 혹은, 테스트 필드에서 엔터키를 누름

 reset

 폼을 초기화함

 change

 폼 필드에서 변경이 일어남
 (텍스트 변도으 라디오 버튼의 클릭 등)

 focus

 해당 요소를 클릭

 마우스 커서를 놓을 때

 blur

 focus의 반대

 탭 누름, 필드 밖을 클릭하는 등

 select

 텍스트 필드 등의 텍스트를 선택했을 때

 문서(document) & 창(window) 이벤트

 load

 문서 및 추가 자원(이미지 등)들을 모두 

 불러왔을 때 발생

 resize

 창의 최대화 버튼 

 또는 창의 크기를 조절

 scroll

 스크롤바를 드래그하거나
 키보드 또는 마우스휠 사용

 unload

 해당 페이지를 벗어남

 (링크를 클릭, 브라우저 탭/창을 닫음 등)

<%@ page contentType="text/html; charset=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">

<title>Insert title here</title>

<script type="text/javascript">

function sendIt() {

var f = document.myForm;

if(!f.userId.value){

alert("아이디를 입력하세요");

f.userId.focus();

return;

}

if(!f.userPwd.value) {

alert("패스워드를 입력하세요");

f.userPwd.focus();

return;

}

alert("회원가입 성공:)");

}

function onlyNum() {    

if(event.keyCode<48 || event.keyCode>57){

event.returnValue=false;

}

}

function hangul() {

if(event.keyCode<12592 || event.keyCode>12687){ // 한글의 유니코드를 사용

event.returnValue=false;

}

}


</script>

</head>


<body>


<form action="" name="myForm" method="post">


아이디:<input type="text" name="userId"></br>

패스워드:<input type="password" name="userPwd"></br>

이름:<input type="text" name="userName" onkeypress="hangul();"></br>

성별:<input type="radio" name="gender" value="M" checked="checked">남자

<input type="radio" value="F" name="gender">여자</br>

전화:

<select name="tel1">

<option value="">선택</option>

<option value="010" selected="selected">010</option>

<option value="011">011</option>

<option value="070">070</option>

</select>-

<input type="text" name="tel2" onkeypress="onlyNum();">-<input type="text" name="tel3" onkeypress="onlyNum();"></br>

동의합니까?<input type="checkbox" name="chk" value="y"></br>

메모</br>

<textarea rows="5" cols="20" name="memo"></textarea></br>

<input type="button" value="회원가입" onclick="sendIt();">

<input type="reset" value="다시입력">

<input type="button" value="취소">


</form>


</body>

</html>

▶onkeypress="onlyNum();"

function onlyNum() {    

if(event.keyCode<48 || event.keyCode>57){

event.returnValue=false;

}

}

>키보드를 누를때마다 이벤트 발생

>숫가가 아닌 키보드를 누를때는 글자가 작성되지 않는다


onkeypress="hangul();"

function hangul() {

if(event.keyCode<12592 || event.keyCode>12687){ // 한글의 유니코드를 사용

event.returnValue=false;

}

}

>키보드를 누를때마다 이벤트 발생

>한글이 아닌 키보드를 누를때는 글자가 작성되지 않는다


2. <%! %> : 이거 서비르 안에 만들면 안돼!

○ 메소드 안에 메소드를 만들 수 없어 사용한다.
○ 서비스 안에 들어가는 내용에는 메소드를 만들 수 없어
    "메소드 밖에 만들어라!" 라는 의미
○ 서비스는 메소드

<%@ page contentType="text/html; charset=UTF-8"%>

<%

int a=10,b=5,c;

c=a+b;

%>


<%!

int a=0;

int sum(int x) {

int s=0;

for(int i=1;i<=x;i++)

s+=i;

return s;

}

%>

<!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">

<title>Insert title here</title>

</head>

<body>

합:<%=a %>+<%=b %>=<%=c %></br>

<!-- 내장객체를 사용하여 출력 -->

<!-- out.print(); -->

<%

String str = String.format("%d+%d=%d</br>", a,b,c);

out.print(str);

out.println("합: " +a+ "+" +b+ "=" +c+ "</br>");

out.print("합: " +a+ "+" +b+ "=" +c+ "</br>");

%>

</body>


</html>


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

Jsp 4일차 - jsp영역 안에서 html사용  (0) 2019.02.15
Jsp 4일차 - request & response  (0) 2019.02.14
Jsp 3일차 - CSS기본  (0) 2019.02.14
Jsp 2일차 - HTML기본  (0) 2019.02.13
Jsp 1일차 - 톰캣 설치  (0) 2019.02.11

댓글