====== form submit 전 input value 체크 ====== * description : 페이지 설명 업데이트 필요 * author : 도봉산핵주먹 * email : hylee@repia.com * regdate : 2020-01-28 * lastupdate : 2020-01-31 ---- Jquery를 사용해 form submit() 하기전에 input에 value가 있는지 체크 - 주석으로 설명을 대신하겠습니다. - 회원가입이나 게시글 insert 할때 사용하면 유용할것 같습니다. - (응용)form이 submit() 이 아니더라도 특정 태그 안에 input이나 checkbox를 체크할때도 좋을것같습니다. - 실제 코***** REKMS에 적용한 소스입니다. - 맨 아래 이미지를 참고하여 보시면 좋을 것 같습니다. //ID가 checkValue_insert 라는 버튼을 클릭 했을 때 이벤트 발생 $('#checkValue_insert').click(function(){ var result = txtFieldCheck() == true ? true : false; // txtFieldCheck() 가 true일때 if(result) { // id가 insert_frm 인 form에 submit() 할 action(속성) 주소를 입력한다. // 밑에 처럼 할경우 버튼 클릭 이벤트가 다를때마다 action을 다르게 입력해서 활용할 수 있다. // (응용) 등록, 수정 action을 따로 입력 할 수 있다. $("#insert_frm").attr("action", "/REKMS/site/siteListInsert.do"); $("#insert_frm").submit(); } }); function txtFieldCheck(){ // form안의 모든 input text type 조회 var txtEle = $("#insert_frm input[type=text]"); // form 안에 input text type 만큰 for문을 돈다. for(var i = 0; i < txtEle.length; i ++){ // input 순서대로 value 체크를 한다. if("" == $(txtEle[i]).val() || null == $(txtEle[i]).val()){ //value 값이 없는 input id를 가져온다. var ele_id = $(txtEle[i]).attr("id"); //그 id의 label 정보를 가져온다. var label_txt = $("label[for='" + ele_id +"']").text(); showAlert(ele_id, label_txt); return false; } } //for문에서 input value가 null이 아니면 true를 return한다. return true; } function showAlert(ele_id, label_txt){ //label 정보를 가져와 "라벨정보"+을 입력해 주세요를 alert 띄운다. alert(label_txt + "을 입력해 주세요."); //value가 없는 해당 input에 커서를 갓다놔 둔다. $("#" + ele_id).focus(); } ---- ==== Ref ==== * {{tag>도봉산핵주먹}}