2014-09-04 2 views
0

검도 유효성 검사기에 대한 사용자 정의 규칙을 모든 유효성 검사기에서 공유 할 계획입니다. 발리에 내 코드에서 내가 가진 :Kendo Validator 사용자 정의 규칙 중앙화

rules: { 
    bothorblank: function (input) { 
     ... 
    }, 
    mutualexclusive: function(input) { 

    } 
} 

나는 오픈 소스 버전을 사용하고 있기 때문에, 모든 유효성 검사기를 통해 규칙을 중앙 집중화하는 쉬운 방법은 무엇입니까? 규칙으로 설정 한 정적 속성이 있습니까? 아니면 개체를 반환하는 일반 메서드를 정의하고 초기화 시간 동안 호출하는 가장 좋은 방법은 무엇입니까?

+0

일반적인 방법은 솔루션에 일부 코드 샘플을 것입니다. – cwishva

답변

0

동일한 시나리오를 거치면서 페이지/사이트에서 작동하는 전역 규칙으로 맞춤 규칙을 만들었습니다. 여기에 설명하는 블로그가 있으며 여기에서 데모를 찾을 수 있습니다.

데모 - http://jsfiddle.net/chandarmk/vrrq5wyu/

블로그 - http://thirum.wordpress.com/2014/12/23/kendo-custom-global-validator/ 다음

, 아니 정적 속성이없는

kendo.ui.validator.rules.isValidDate = function (input, params) { 

    //ignore all other input that doesnt have this attribute 
    //case insensitive 
    if (!(input.is('[data-isValidDate]') || input.is('[data-isvaliddate]'))) return true; 

    var retVal = false; 

    var kendoDatePicker = input.data("kendoDatePicker"); 
    if (kendoDatePicker) { 
     var d = kendo.parseDate(kendoDatePicker.value(), ["yyyy/MM/dd HH:mm", "MM/dd/yyyy HH:mm", "MMM dd, yyyy h:mm tt", "yyyy/MM/dd", "MM/dd/yyyy", "MMM dd, yyyy"]); 
     retVal = d instanceof Date; 
     if (retVal) input.closest('.k-datepicker').removeClass("red-box"); 
     else input.closest('.k-datepicker').addClass("red-box"); 
    } 

    return retVal; 
} 
관련 문제