2013-05-13 1 views
0

현재 입력 상자를 반복하면서 사용자가 아무 것도 입력하지 않으면 을 수행합니다. 나는 이라는 조건문을 가지고 있는데, 특정 ID라면 입력 상자 을 입력하고 별도의 유효성 검사를 수행합니다. 은 양식의 길이가 10 자 미만인지 확인하기 만하면되는 간단한 검증 방법입니다. 하지만 어떤 이유로 작동하지 않습니다. 단일 문자 을 입력하면 다음 반복으로 넘어갑니다. 어쨌든 if 문 안에 여러 개의 if 문이있는 을 제거 할 수도 있습니다. 모든 도움을 주시면 대단히 감사하겠습니다.특정 id 인 경우 jQuery check 길이

$("form :input").each(function(){ 

var $this = $(this); 

if(!this.value.length){ 

    if(this.id == "phoneNumber" && $this.is(":visible")){ 
     if($this.val().length < 10){ 
     alert("phone number required"); 
     } 
    } 


} else if($(this).is(":visible")){ 
    //do some other validation  
} 
+0

그리고 당신이 골라 내고자하는 것은 무엇입니까? 'phoneNumber'? –

+0

[jQuery Validation plugin] (http://docs.jquery.com/Plugins/Validation)이 도움이 될 수 있습니다. –

답변

2

중첩 된 테스트는 문제가 있습니다 : 당신은 이미 0의 시험했을 때 길이가 <10 경우 테스트에서 아무 의미가 없습니다. 값이 1 문자 길이이면 전화 번호로 너무 작지 않은지 확인하지 않습니다.

if (this.id == "phoneNumber" && $this.is(":visible") && this.value.length<10){ 
    alert("phone number required"); 
} else if(!this.value.length) { 
    // alert field empty ? 
} else ... 
+0

덕분에 @dystroy가 완벽하게 작동했습니다! –

0

JQuery와 유효성 검사 플러그인이 있습니다

당신은 아마이 원했다. 모든 힘든 일들이 당신을 위해 들어 올까요? 유효 기간은 최소 유효성 검사와 유효한 전화 번호, 유효한 CC 번호 및 다른 많은 필드 유형인지 확인하는 것입니다. http://docs.jquery.com/Plugins/Validation