2010-07-22 6 views
0

한 번에 하나의 오류 메시지를 표시하고 다음 오류를 표시하기 위해 한 번 오류를 수정하려고합니다.Jquery를 사용하여 한 번에 하나의 오류 메시지 표시

예를 들어 날짜 텍스트 상자가 유효하면 월 오류 메시지 choudl이 표시되면 세 개의 텍스트 상자 (날짜, 월 & 년)에 대한 유효성 검사가 있습니다.

지금까지 이에 대한이 코드는 다음과 같습니다

  $('#' + field).siblings('span').hide(); 
      $('#' + field).siblings('span').each(function() { 
       var $this = $(this); 
       if (!$this.isvalid) { 
        $this.show(); 
        return false; 
       } 
      }); 
     } 
    } 
}; 

return { 
    init: function(args) { 
     var fnOld = ValidatorUpdateIsValid; 
     ValidatorUpdateIsValid = function() { 
      fnOld(); 
      pi_CheckValidators(); 
     } 
    } 
}; 

답변

0
:

var pi_ArrayValidationResult; 
var pi_EachValidator = function(delegate) { 
    if (typeof (Page_Validators) !== undefined) { 
     for (var i = 0; i < Page_Validators.length; ++i) { 
      delegate(Page_Validators[i]); 
     } 
    } 
}; 

var pi_CheckValidators = function() { 

    var fields = {}; 
    pi_EachValidator(function(val) { 
     if (fields[val.controltovalidate] === undefined) { 
      fields[val.controltovalidate] = true; 
     } 
     fields[val.controltovalidate] = fields[val.controltovalidate] && val.isvalid; 
    }); 
    for (var field in fields) { 
     if (fields.hasOwnProperty(field)) { 
      $('#' + field) 
       .parent('div.fm-req') 
       .toggleClass('fm-error', !fields[field]); 

이 섹션은 이전 오류가 수정되면 다음 다음 하나의 오류를 보여, 수정을 필요로하는 비트입니다

세 개의 텍스트 필드에 대한 입력의 유효성을 검사하는 중이라면 날짜 필드에 대해 내장 메소드와 함께 jQuery 유효성 검사기 플러그인을 사용할 수 있습니다. showErrors 핸들러를 오버라이드하여 콜백 args의 배열에 첫 번째 오류를 표시하면됩니다.

Page_Validators에 익숙하지 않습니다. 그게 .net 일인가요?

관련 문제