2011-05-11 7 views
36

jQuery 유효성 검사를 사용하여 양식의 유효성을 검사합니다. 내 양식에 두 개의 텍스트 상자가 있고 첫 번째 텍스트 상자에만 "이 필드가 필요합니다."가 추가됩니다. 메시지. 첫 번째 클래스에서 "필수"클래스를 제거하면 두 번째 클래스가 메시지를 갖게됩니다.jQuery 유효성 검사는 하나의 필드 만 유효화합니다.

HTML :

<form id="questionForm"> 
<div><input class="required" id="value" type="text" /></div> 
<div><textarea class="required" id="description"></textarea></div> 
<button type="submit">Save</button> 
</form> 

자바 스크립트 :

$("#questionForm").validate({ submitHandler: function() { 
     alert("valid"); 
    } 
}); 

왜 하나의 유효성을 검사한다?

편집 : 1.7

편집 2 플러그인 jQuery를 검증 사용하고 있습니다 모른 채 내가 MVC 3

답변

102

나는이 문제를 직접 만났습니다. 한 시간 동안 내 머리를 꺼내하지만 여기있다 :

뿐만 아니라 거기에 "이름"속성을 던져 그 트릭을 할 수 있습니다.

+2

입력 필드에 있음을 의미합니다 :) – Jay

+8

감사합니다. ! 이것 때문에 거의 내 머리를 다시 박살 냈다. –

+0

단지 간단한 문제로 양식을 디버깅하는 데 시간을 낭비했습니다. 내 눈썹을 불 태우려고 내 암호의 모든 문자를 검사하려고 했어! 고마워요! – optimum

1

사용하고 어떤 검증 플러그인을 사용하고 있다면 문제를 해결하기가 어렵습니다. 그러나 jQuery가 각 필드를 순환하지 않는 것처럼 보이지만 잘못된 필드에 도달하면 중지됩니다. jQuery $.each() 메서드를 사용하고 유효성 검사기가 잘못된 필드에 도달했을 때 유효성 검사 프로세스가 중지되지 않도록 일부 조건을 사용하여보십시오. 도움이

희망,
spryno724

1

나는 경고가 두 필드의 유효성 검사를 차단하고 생각합니다. 1 경고 후 나머지 자바 스크립트를 중지합니다. 대신 $('#questionForm').validate();을 사용하면 어떻게됩니까?

+0

아니예요. 나는 당신의 제안을 시도했고 또한 경고()를 제거했으나 효과가 없었다. 제출 처리기는 콜백 함수 (call back function)이므로 폼 유효성이 검사 될 때까지 호출되지 않을 것이라고 생각했습니다. –

+0

나는 어느 쪽이든 확실치 않지만, 경고에 의해 루프가 중단되었다는 문제가 한 번 더 발생했습니다. 왜 아무것도 반환해서는 안되는지 확실하지 않습니다. –

+0

그리고 내가 옳은 문서에서 얻은 것 : 폼이 유효 할 때 호출되어야하는 것 같습니다 (기본값은'form.submit(); ' –

1

Jquery.validate() 기능을 사용하여 유효성을 검사하려는 모든 DOM 요소에 대해 name 속성을 입력해야합니다.

관련 문제