2015-01-01 5 views
0

검도 숫자 텍스트 상자가 있습니다. Min 값을 1로 설정하고 Max 값을 31로 설정했습니다. 31보다 큰 값을 입력하면 "값은 1과 31 사이 여야합니다."라는 오류 메시지를 표시하려고합니다. 위젯을 더 크게 입력하면 최대 값으로 반올림하십시오. 따라서 키보드로 값 50을 입력하고 입력에서 포커스를 잃거나 양식을 저장하면 값은 최대 값 31로 반올림됩니다.검도의 최대 값이 증가하면 오류 메시지가 표시됩니다.

위젯 텍스트에 더 큰 값을 입력 할 때 필요합니다. 상자에 오류 메시지가 표시됩니다.

 @(Html.Kendo().NumericTextBox<int>() 
     .Name("month_day_1") 
     .Format("#") 
     .Min(1) 
     .Max(31) 
     .Events(evnt => evnt.Change("Change")) 

사람이 어떻게 그런거 변화가 콘솔에 정의되지 않기 때문에 나는 오류가 발생했습니다 검도 숫자 textbox.But의 변경 이벤트에 조건을 적용하려 구현을 가르쳐 주시겠습니까 : 여기 내 코드입니다. 여기

내 자바 스크립트 함수입니다 :

function Change(e) { 
    debugger; 
    var numerictextbox = $("#month_day_1").data("kendoNumericTextBox"); 
    var value = numerictextbox.value(); 

    if (value > 31) { 
     alert("Month Day value must be between 1 and 31"); 
     return false; 
    } 
} 
    ) 
+0

큰 값을 삽입하거나 전혀 삽입하지 않고 직접 값을 확인하십시오. – Mouser

+0

@ Mouser. 죄송합니다. –

+0

코드에서 이미 31보다 큰 값을 확인합니다. 최대 값을 생략하면 문제가되지 않습니다. – Mouser

답변

0

하실 것을 적극 수행해야합니다 당신은 입력 자체라는 이벤트에 있기 때문에, 키워드 this가를 의미

@(Html.Kendo().NumericTextBox<int>() 
    .Name("month_day_1") 
    .Format("#") 
    .Min(1) 
    .Events(e => e.Change("ChangeInput")); 

function ChangeInput(e) { 
    var value = this.value; 
    //This should work too 
    //Using jQuery --> to use, delete value = this.value and uncomment the line below 
    //var value = $("#month_day_1").val(); 

    if (value > 31) { 
     alert("Month Day value must be between 1 and 31"); 
     return false; 
    } 
} 

입력. this.value으로 값을 검색하는 것이 효과적입니다. 자바 스크립트가 페이지에 있고로드되었는지 확인하십시오.

관련 문제