2011-01-24 7 views
0

프로그래밍 로직에 가짜을 만들었습니다. 평가하십시오 다음 유효성 검사() 메소드가 진행을 중지하지 않습니다JQuery 유효성 검사가 수행되지 않음

내가 여기서 확실 해요 무엇
$('#lead_form_step_2 .prev').click(function (event) { 
    $('#LeadForm').validate(); 
    $('#lead_form_step_2').hide(); 
    $('#lead_form_step_1').show(); 
}); 

$('#lead_form_step_2 .next').click(function (event) { 
    $('#LeadForm').validate() 
    $('#lead_form_step_2').hide(); 
    $('#lead_form_step_3').show(); 
}); 

이라고 :

<form id="LeadForm" method="post" action=""> 
    <div id="lead_form_step_1"> 
    <asp:Label ID="lblProgramOfInterest" class="lead_form" runat="server" Text="Program of Interest"></asp:Label><asp:DropDownList ID="ddlProgramOfInterest" runat="server"></asp:DropDownList> 
    <p /> 

    <span class="next">Next &gt;&gt;</span> 
    </div> 

    <div id="lead_form_step_2"> 
    <div class="lead_form">First Name:<input type="text" id="NameFirst" class="required" minlength="2"/></div> 
    <div class="lead_form">Last Name:<input type="text" id="NameLast" /></div> 
    <div class="lead_form">Address:<input type="text" id="AddressLine1" /></div> 
    <div class="lead_form">Address:<input type="text" id="AddressLine2" /></div> 
    <div class="lead_form">City:<input type="text" id="AddressCity" /></div> 
    <div class="lead_form">State:<input type="text" id="AddressState" /></div> 
    <div class="lead_form">Zip Code:<input type="text" id="AddressZip" /></div> 
    <p /> 
    <span class="prev">&lt;&lt; Previous</span>&nbsp;&nbsp;<span class="next">Next &gt;&gt;</span> 
    </div> 

    <div id="lead_form_step_3"> 
    <div class="lead_form">Email:<input type="text" id="EmailAddress" /></div> 
    <div class="lead_form">Phone:<input type="text" id="HomePhone" /></div> 
    <div class="lead_form">Mobile:<input type="text" id="MobilePhone" /></div> 
    <div class="lead_form">Inquired Before:<input type="checkbox" id="InquiredBefore" /></div> 
    <br /><span class="prev">&lt;&lt; Previous</span> &nbsp;<span class="leadsubmit">Submit</span> 

</div> 
</form> 

다음은 JQuery와 유효성 검사기 및 사업부 - 스위처입니다 다음/이전 링크를 클릭하면 양식이 표시됩니다. 실제로 그것의 유효성 검사를하지 않는 것이 중요합니다. this 튜토리얼을 활용하고 있습니다. 무엇을 놓쳤습니까?

+1

입력란에 '이름'속성을 추가하지 않으면 유효성 검사가 작동하지 않는 것으로 나타났습니다. – Nippysaurus

+0

흥미 롭군요, jquery 유효성 검사기 플러그인을 사용하고 계셨습니까? – lazyPower

+0

ASP.NET MVC 3 템플릿 중 하나와 함께 제공되는 jquery 구현을 사용하고있었습니다. (jquery-1.5.1). jquery가 CSS 클래스를 기반으로 유효성 검사 규칙을 결정하는 것을 허용하는 것이 아니라 JS에서 사용자 정의 유효성 검사기 코드를 사용하고있었습니다. * 어깨를 으 *하는 * 이것은 내가 그것을 사용하고있는 처음이다. 그래서 내가 간과 한 다른 요인이 있었을 것이다. – Nippysaurus

답변

0

당신이하고 싶은 것은 $('#LeadForm').validate()을 조건절로 싸고 그것이 유효하면 true를, 그렇지 않으면 false를 반환합니다. 당신의 다음 내용 클릭 이벤트가 나는 .validate() 함수는 진행을 중지하는 수익을 가지고 있기 때문에이 정지하고있는 이유는 생각 때문에

$('#lead_form_step_2 .next').click(function (event) { 
if($('#LeadForm').validate()) 
{ 
$('#lead_form_step_2').hide(); 
$('#lead_form_step_3').show(); 
} 
else return false; 
}); 
+0

NameFirst 필드의 빈 입력에서 여전히 트리거되지 않습니다. 또는 그 문제에 대해 전혀.JS에 중단 점을 설정하면 실행되지 않았습니다. – lazyPower

+1

aspx 파일에 포함 된 유효성 검사 플러그인에 대한 참조입니까? – Hakeem

+0

물론이고로드 된 것으로 표시됩니다. 200 방화범이 끌려간 패널에 200 OK – lazyPower

0

같이 변경 될 수 있습니다. 아마도 폼을 제출할 때 유효성 검사를 수행하거나 입력 요소 각각에 대해 흐림/변경을 수행하는 것이 더 좋을까요?

$ ('input, select'). $ { 'LeadForm} $ ('# LeadForm '); ( $ ('# LeadForm ')); });

이렇게하면 각 요소가 변경되거나 선택 취소 된 후 양식을 다시 확인하게됩니까?

희망이 도움이됩니다.

유효성 (옵션 ')

이 방법은 이벤트 핸들러 제출 포커스의 keyup, 흐림 전체 폼 또는 개별 요소의 유효성을 트리거을 클릭을 설정한다. 각 옵션은 비활성화 할 수 있습니다 (onsubmit, onfocusout, onkeyup, onclick) onxxx 옵션을 참조하십시오. focusInvalid는 잘못된 양식을 제출할 때 요소에 초점을 둡니다.

0

내 경우 현재 페이지에 여러 형태가있다, 내가 사용하고 있습니다 : jQuery.validate 혼란하게

$('form').validate() 

.

해결 방법 : 양식에 ID 지정자를 지정하십시오. 예 :

$('#my_form_id').validate() 
관련 문제