2015-01-01 49 views
0

我有一個kendo數字文本框。我已將最小值設置爲1,將最大值設置爲31.如果輸入的值大於31,我希望顯示一條錯誤消息「值必須介於1和31之間」。如果您輸入的值更大,則小部件將將其調整到最大值。所以如果你用鍵盤輸入50的值並且從輸入中丟失焦點或者保存表格,則該值將四捨五入爲最大值31.想要顯示錯誤消息,如果值增加kendo數字文本框中的最大值

我希望在小部件文本中輸入更大的值框中顯示一條錯誤消息。這裏是我的代碼:

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

誰能告訴我如何實現that.I嘗試應用在劍道數字textbox.But我得到了錯誤的更改不會在控制檯中定義的改變事件的條件。

這裏是我的javascript函數:

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.Sorry我沒有讓你。 –

+0

你的代碼已經檢查大於31的值。省略最大值,你會沒事的。 – Mouser

回答

0

這應該做的正是你需要的東西:

@(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指輸入。檢索值this.value應該工作。確保您的JavaScript在頁面上並加載。

相關問題