반응형
[jQuery] input 이벤트
inputEvent-1.html |
<!doctype html> <html lang="ko"> <head> <meta charset="UTF-8"> <title>입력폼 이벤트</title> <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script> <script type="text/javascript"> jQuery(document).ready(function() { jQuery("#id").focus(); // focusout : 커서가 벗어나기 전에 호출되는 이벤트 jQuery("#id").focusout(function() { if(jQuery("#id").val() == "") { alert("아이디를 입력해 주세요."); jQuery("#id").focus(); } }); jQuery("#submitBtn").click(function() { if($("#id").val() == "") { alert("아이디를 입력해 주세요."); jQuery("#id").focus(); return; } // 아이디 작성규칙에 대한 유효성 검사 var idReg=/^[a-zA-Z]+[a-zA-Z0-9_]{5,19}$/g; // 정규표현식 if(!idReg.test(jQuery("#id").val())) { alert("아이디는 영문자, 숫자, _로만 입력가능합니다."); jQuery("#id").focus(); return; } if(jQuery("#passwd").val() == "") { alert("비밀번호를 입력해 주세요."); jQuery("#passwd").focus(); return; } if(jQuery("#name").val() == "") { alert("이름을 입력해 주세요."); jQuery("#name").focus(); return; } if(jQuery("#address").val() == "") { alert("주소를 입력해 주세요."); jQuery("#address").focus(); return; } jQuery("#inputForm").attr("method", "post"); jQuery("#inputForm").attr("action", ""); jQuery("#inputForm").submit(); }); jQuery("#resetBtn").click(function(){ jQuery("#inputForm")[0].reset(); jQuery("#id").focus(); }); }); </script> </head> <body> <h1>입력폼 이벤트</h1> <hr/> <form id="inputForm"> <fieldset> <legend>회원가입 정보</legend> <ul> <li> <label for="id">아이디</label> <input type="text" id="id"> </li> <li> <label for="passwd">비밀번호</label> <input type="password" id="passwd"> </li> <li> <label for="name">이름</label> <input type="text" id="name"> </li> <li> <label for="address">주소</label> <input type="text" id="address"> </li> </ul> </fieldset> <fieldset id="buttonFS"> <button type="button" id="submitBtn">회원가입</button> <button type="button" id="resetBtn">다시입력</button> </fieldset> </form> </body> </html> |
출력결과 |
inputEvent-2.html |
<!doctype html> <html lang="ko"> <head> <meta charset="UTF-8"> <title>입력폼 이벤트</title> <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script> <script type="text/javascript"> jQuery(document).ready(function() { jQuery("#id").focus(); // submit : submit 버튼을 누른 경우 발생하는 이벤트 jQuery("#inputForm").submit(function() { if(jQuery("#id").val() == "") { alert("아이디를 입력해 주세요."); jQuery("#id").focus(); return false; } // 아이디 작성규칙에 대한 유효성 검사 var idReg=/^[a-zA-Z]+[a-zA-Z0-9_]{5,19}$/g; // 정규표현식 if(!idReg.test(jQuery("#id").val())) { alert("아이디는 영문자, 숫자, _로만 입력가능합니다."); jQuery("#id").focus(); return false; } if(jQuery("#passwd").val() == "") { alert("비밀번호를 입력해 주세요."); $("#passwd").focus(); return false; } if(jQuery("#name").val() == "") { alert("이름을 입력해 주세요."); jQuery("#name").focus(); return false; } if(jQuery("#address").val()=="") { alert("주소를 입력해 주세요."); jQuery("#address").focus(); return false; } jQuery("#inputForm").attr("method", "post"); jQuery("#inputForm").attr("action", ""); }); }); </script> </head> <body> <h1>입력폼 이벤트</h1> <hr/> <form id="inputForm"> <fieldset> <legend>회원가입 정보</legend> <ul> <li> <label for="id">아이디</label> <input type="text" id="id"> </li> <li> <label for="passwd">비밀번호</label> <input type="password" id="passwd"> </li> <li> <label for="name">이름</label> <input type="text" id="name"> </li> <li> <label for="address">주소</label> <input type="text" id="address"> </li> </ul> </fieldset> <fieldset id="buttonFS"> <button type="submit">회원가입</button> <button type="reset">다시입력</button><!-- reset 타입은 입력된 모든 값(value)를 제거한다. --> </fieldset> </form> </body> </html> |
출력결과 |
inputEvent-3.html |
<!doctype html> <html lang="ko"> <head> <meta charset="UTF-8"> <title>입력폼 이벤트</title> <script type="text/javascript" src="http://code.jquery.com/jquery-1.11.3.min.js"></script> <script type="text/javascript"> jQuery(document).ready(function() { jQuery("#id").focus(); // submit : submit 버튼을 누른 경우 발생하는 이벤트 jQuery("#inputForm").submit(function() { var notNull = jQuery("#inputForm").find("[notNull='true']"); // find : 일치하는 모든 요소를 찾아온다. for(var i=0; i < notNull.length; i++) { if(notNull.eq(i).val() == "") { alert(notNull.eq(i).attr("print") + "를(을) 입력해 주세요."); notNull.eq(i).focus(); return false; } } // 아이디 작성규칙에 대한 유효성 검사 var idReg=/^[a-zA-Z]+[a-zA-Z0-9_]{5,19}$/g; // 정규표현식 if(!idReg.test($("#id").val())) { alert("아이디는 영문자,숫자,_로만 입력가능합니다."); jQuery("#id").focus(); return false; } jQuery("#inputForm").attr("method", "post"); jQuery("#inputForm").attr("action", ""); }); }); </script> </head> <body> <h1>입력폼 이벤트</h1> <hr/> <form id="inputForm"> <fieldset> <legend>회원가입 정보</legend> <ul> <li> <label for="id">아이디</label> <input type="text" id="id" notNull="true" print="아이디"> </li> <li> <label for="passwd">비밀번호</label> <input type="password" id="passwd" notNull="true" print="비밀번호"> </li> <li> <label for="name">이름</label> <input type="text" id="name" notNull="true" print="이름"> </li> <li> <label for="address">주소</label> <input type="text" id="address" notNull="true" print="주소"> </li> </ul> </fieldset> <fieldset id="buttonFS"> <button type="submit">회원가입</button> <button type="reset">다시입력</button> </fieldset> </form> </body> </html> |
출력결과 |
반응형
'jQuery' 카테고리의 다른 글
[jQuery] 무한 스크롤 이벤트 (0) | 2016.01.03 |
---|---|
[jQueyr] On / Off 이벤트 (0) | 2016.01.03 |
[jQuery] checkbox 이벤트 (1) | 2015.12.29 |
[jQuery] jQuery 엘리먼트 (0) | 2015.12.28 |
[jQuery] jQuesy 이벤트 (0) | 2015.12.20 |