2010-05-22 3 views
1

내가 jquery.validate.jsMVC2 및 jquery.validate.js

모든

먼저 몇 가지 혼란을 경험하고, MicrosoftMvcJqueryValidation.js는 것입니다. 웹의 스 니펫 (snippets)에서 참조되지만 RTM MVC2에서 삭제 된 것으로 보입니다. 현재는 미래에 있습니다. 필요합니까?

내가 묻는 이유는 MVC와 함께 유효성 검사기를 사용하려고 노력하고있어 작동하지 않을 수 있기 때문입니다. JS를 다음과 같이 정의했습니다.

$(document).ready(function() { 
    $("#myForm").validate({ 
       rules: { 
       f_fullname: { required: true }, 
       f_email: { required: true, email: true }, 
       f_email_c: { equalTo: "#f_email" }, 
       f_password: { required: true, minlength: 6 }, 
       f_password_c: { equalTo: "#f_password" } 
      }, 
      messages: { 
       f_fullname: { required: "* required" }, 
       f_email: { required: "* required", email: "* not a valid email address" }, 
       f_email_c: { equalTo: "* does not match the other email" }, 
       f_password: { required: "* required", minlength: "password must be at least 6 characters long" }, 
       f_password_c: { equalTo: "* does not match the other email" } 
      } 
     }); 

});

내보기에 형태 :

 <% using (Html.BeginForm("CreateNew", "Account", FormMethod.Post, new { id = "myForm" })) 
     { %> 
    <fieldset> 
      <label for="f_fullname">name:</label><input id="f_fullname"/> 
      <label for="f_email"><input id="f_email"/> 
      ...etc... 
      <input type="submit" value="Create" id="f_submit"/> 
    </fieldset> 
    <% } %> 

및 검증 방법은 불을 지르고에서 오류없이() .ready에 불려갑니다. 그러나 양식을 제출할 때 아무 것도 검증되지 않고 양식이 제출됩니다. submitHandler()를 호출하면 호출되지만 유효성 검사 오류 (.valid() == true)가 플러그인에서 감지되지 않습니다.

무엇이 누락 되었습니까?

답변

2

MVC/jQuery 유효성 확인 글루 파일은 소스 코드의 MVCFutures 섹션에 있습니다. 코드는 CodePlex에 있습니다. 모델에 DataAnnotations 속성을 사용하려는 경우가 아니면 필요하지 않습니다. 당신이 가진 문제는 아마도 ID뿐만 아니라 입력에 이름이 없기 때문일 것입니다. 나는 jQuery 유효성 검사 플러그인이 이름과 ID를 사용하여 규칙과 일치한다고 믿는다.

+0

고마워요! 예, ID 외에 이름을 추가하는 것이 트릭을 수행했습니다. –