1. 제이쿼리에서 이벤트 발생시키기
1) 버튼 만들기
제이쿼리에서 이벤트를 발생시켜보자.
우선 회원가입에 대한 기본적인 버튼들을 만들어보려한다.
jQuery 이벤트
<!DOCTYPE html>
<html lang="ko">
<head>
<meta charset="UTF-8">
<title>02_jquery이벤트.html</title>
<!-- jQuery import -->
<script src="jquery-3.6.1.min.js"></script>
</head>
<body>
<h3>jQuery 이벤트</h3>
<form id="memfrm" name="memfrm" action="ok.jsp">
아이디 : <input type="text" id="uid" name="uid" value="ITWILL">
<hr>
<!-- <button> 요소는 기본 속성이 type="submit" 이다. -->
<button id="btn_idcheck">ID중복확인</button>
<button id="btn_join">회원가입</button>
<button id="btn_reset">다시쓰기</button>
</form>
</body>
</html>
2) 값에 접근하기
이제 아이디가 갖고 있는 값에 접근해보려하는데, 두 가지 방식을 사용하려한다.
① JavaScript 문법으로 접근하기
먼저는 jQuery를 사용하지 않고 JavaScript의 문법으로 접근을 해보려한다.
alert(document.getElementById("uid").value);
② jQuery 문법으로 접근하기
다음은 jQuery의 문법으로 접근을 해보자.
기본 문법 : $(선택자).action();
jQuery는 우선적으로 $ 를 쓴 뒤 그 뒤에 선택자가 사용이 된다.
아이디라면 #, 클래스라면 . 의 선택자 말이다.
선택자를 쓴 뒤에는 어떤 액션을 취할 것인지를 이어서 적어준다.
alert($("#uid").val());
2. 이벤트
1) 클릭 이벤트
문법도 확인했겠다, 이제 본격적으로 jQuery를 활용하여 이벤트를 발생시켜보자.
W3School의 내용을 참조하면서 보아도 좋다.
https://www.w3schools.com/jquery/jquery_events.asp
버튼에 대한 가장 흔한 이벤트라 함은 click이 되겠다.
클릭 이벤트를 한번 사용해보자.
$("선택자").click(function함수명(){});
위의 뜻은 "선택자"가 가리키는 버튼이 클릭되었을 때 function 함수를 발생시켜라, 라는 뜻이다.
$("선택자").on(click, function(){});
같은 뜻으로 위와 같이 on이라는 함수를 사용할 수도 있지만 더 직관적인 첫번째 문법을 사용하려 한다.
2) 클릭 이벤트를 사용하여 팝업창 띄우기
이제 이벤트를 사용해보자.
먼저 ID중복확인을 누르면 팝업창을 띄우는 것을 해보려 한다.
$("#btn_idcheck").click(function(){
// id=btn_idcheck 클릭했을 때 팝업창 띄우기
window.open("blank.html", "popwin", "width=350,height=300");
}); // click end
다음은 회원가입 버튼을 누르면 회원가입을 서버로 신청하게 하는 이벤트를 발생시키려 한다.
이 때 아이디가 8~12글자가 아니라면 서버로 전송하지 않게 하려 한다.
$("#btn_join").click(function(){
let uid=$("#uid").val();
uid=uid.trim();
if(!(uid.length>=8 && uid.length<=12)){
alert("아이디 8~12글자 이내 입력해주세요~");
$("#uid").focus();
return false; // <button> 요소의 기본 속성이 submit이므로
// return false를 주면 서버로 전송되지 않음
} // if end
$("#memfrm").submit();
}); // click end
마지막으론 다시쓰기 버튼을 누르면 작성된 내용을 초기화 되게 하는 이벤트를 발생시켜보자.
$("#btn_reset").click(function(){
$("memfrm").reset();
return false;
}); // click end
사실 이 모든 것들은 자바스크립트 문법으로도 얼마든지 가능하다.
다만 지금은 jQuery 문법을 사용해보는 것에 의의를 두는 것이다.
아래의 결과물을 확인해보자.
(버튼을 눌러도 넘어갈 곳이 없기 때문에 오류가 뜰 것이다)
jQuery 이벤트
'⁂ jQuery > : 기본 익히기' 카테고리의 다른 글
[jQuery] #6 This로 index 확인하기 (0) | 2022.09.26 |
---|---|
[jQuery] #5 each 반복문 (0) | 2022.09.26 |
[jQuery] #4 속성 관련 메소드 (0) | 2022.09.26 |
[jQuery] #3 jQuery에서 자주 사용하는 함수 - text(), html(), css() + chaining (0) | 2022.09.26 |
[jQuery] #1 jQuery 시작 (0) | 2022.09.26 |