2016-07-11 2 views
0

Knockout을 사용하여 MVC 프로젝트를 보유하고 있습니다.Jquery 유효성 검사가 트리거되지만 제출하는 양식을 막지 못합니다.

jQuery 유효성 검사를 사용하여 등록보기의 유효성을 검사하려고합니다.

<form data-bind="submit: register" id="formRegister"> 
    <label>Email</label> 
    <input id="registerEmail" name="registerEmail" class="required email form-control" 
      type="text" data-bind="value: registerEmail" /> 

    <label>Password</label> 
    <input id="registerPassword" name="registerPassword" class="required form-control" 
      type="password" data-bind="value: registerPassword" /> 

    <label>Confirm Password</label> 
    <input id="registerPassword2" name="registerPassword2" class="required form-control" 
      type="password" data-bind="value: registerPassword2" /> 

    <button type="submit" class="btn btn-default">Register</button> 
</form> 

그리고 JQuery와 :

는 등록보기입니다 내가 양식을 제출하면

$(function() { 
    $(document).ready(function() { 
     $("#formRegister").validate(); 
     $.extend($.validator.messages, { required: "*", email: "Invalid email address." }); 
    }); 
}); 

이 유효성 검사가 트리거하지만 양식 제출되고있다.

+2

일반 브라우저 양식 처리를 방지하려면 false를 반환해야합니다. 클릭 바인딩을 사용하여 버튼 제출을 캡처하고 false를 반환하십시오. – brianlmerritt

+0

@brianlmerritt, 감사합니다. – user3378165

답변

4

양식이 유효하지 않은 경우 false를 반환해야합니다.

$(document).on("submit", "#formRegister", function(evt) { 
     if(!$(evt.target).valid()) { return false; } 
}); 
+0

고마워요! 그게 내 문제를 해결했습니다! – user3378165