var pcheck = true;	//if(pcheck)문에서 두개가 다르면 true,같으면 false     

  $('.submit2').on('click',function(){
        var flen = $("form[name=topForm2] .chk2").length;
        for(var i=0; i<flen; i++){
        if($('.chk2').eq(i).val()=="" ||
           $('.chk2').eq(i).val()==null ||
           $('.chk2').eq(i).val().trim()==""){
          alert($('.chk2').eq(i).attr('title')+'를 입력하시오.');
          $('.chk2').eq(i).focus();
          return false;
        }
       }
        if(pcheck){
            alert("비밀번호가 다릅니다.");
        }else{
          $("form[name=topForm2]").submit();
        }
    });

여기서 pcheck를 true로 주었다

그리고  로직 아래 if else 부분을 보면

pcheck가 참일때 "비밀번호가 다릅니다"가 나오고

거짓일 때 서브밋을 한다.

그 이유는 비밀번호가 다를 때 실행되는 로직이랑

비밀번호가 같을 때 처리하는 로직을 한번에 간단하게 사용할려고 하는거 같다

if(pcheck)가 참일 때 (비밀번호는 실제로 다름) 비밀번호가 다르면 alert이/가 나오게 하고

거짓일 때(비밀번호가 실제로 같다) 서브밋을 해주기 위해서다.

만약에 if(pcheck)에서 (실제로 비밀번호가 같을때) 참을 서브밋으로 하면

pcheck에서 true를 주었기 때문에 바로 서브밋이 된다.

그러면 else 부문이 필요가 없어진다.(비밀번호가 다른 상황에 대한 로직이 없어진다.)

그리고 pcheck가 false로 주면 바로 if문의 거짓인 else부분으로 넘어가기 때문에

alert 즉 비밀번호가 다르다는 상황을 사용자에게 알려줄 수가 없다.

그러므로 두마리의 토끼(비밀번호가 다르다는 상황과 같다는 상황)를 잡기위해

위 로직이 필요하다고 생각한다.

+ Recent posts