2010-04-12 6 views
2

내 asp mvc 응용 프로그램에서 나는 표준 클라이언트 측 유효성 검사 (DataAnnotations + MicrosoftAjax.js + MicrosoftMvcValidation.js)를 사용합니다. 성공/실패한 클라이언트 측 유효성 검사 후 일부 팝업 메시지 (jGrowl)를 표시해야합니다 (ModelState.IsValid를 사용할 수 없으므로). 그래서 클라이언트 쪽 유효성 검사 상태를 나타내는 표준 플래그를 검색합니다. 아무도 그것에 대해 알고 있습니까? 그것이 존재합니까?ASP .NET MVC 클라이언트 측 유효성 검사에 "유효한"플래그가 있습니까?

답변

7

MicrosoftMvcValidation 같은 기능을 노출하는 경우 나도 몰라하지만 양식 필드의 오류가 포함 된 경우 jQuery를 사용하여 확인할 수 있습니다

var isValid = $('#formId .input-validation-error').length > 0; 
+0

+1 매우 똑똑합니다. – jfar

+0

그래,이 사실을 알고 있으며 사실 지금 jQuery를 사용하여 유효성 검사 상태를 확인합니다. 그러나 이것을하기위한 몇 가지 표준적인 것이 있다고 확신합니다. 어쨌든 =) 감사합니다. –

+2

변수가 "isValid"가 아닌 "isInvalid"로 읽어야한다고 생각합니다. – user2173353

0
  // Now get the validation context and call the validate() method 
      var myForm = $("#MainForm"); 
      var formContext = myForm[0]['__MVC_FormValidation']; 
      var errors; 
      if (formContext) { 
       // validate the form 
       errors = formContext.validate("submit"); 
      } 
      if (!formContext || errors.length == 0) { 
       // no errors so submit to server 
       ... 
      } else { 
       // found errors 
       ... 
      } 
0

당신이, 당신이해야 JQuery와 유효성이 눈에 거슬리지 사용하는 경우 사용하는 :부터

$(function() { 
    $('#formid').submit(function() { 
     if (!$(this).valid()) { 
      $('#validation-summary').show(); 
     } 
    }); 
}); 

: How to fire jQuery function only if form is valid - 대린 디미트로프

0
var pageValid = Page_ClientValidate(); 

이것은 .NET에 내장 된 함수로, 실행하면 모든 유효성 검사기가 통과했는지 알 수 있습니다. OnClientClick (return func())의 Form Check 함수에서도 사용할 수 있습니다. JS 조작을 더 추가하십시오.

관련 문제