2014-11-06 49 views
1

我有一個ASP.NET項目,我使用Kendo Numeric TextBox元素。我已經設置了最小值200(在該示例中),並且當用戶輸入較低值時,輸入自動改變爲最小值。Kendo NumericTextBox - 當輸入低於最小值時阻止自動更正

是否有任何方法或屬性可以使我避免這種情況,並顯示紅色或錯誤intead字段,而不是自動更正最小值?

這是我的代碼:

@Html.Kendo() 
    .NumericTextBoxFor(model => model.Example) 
    .HtmlAttributes(new { style = "width: 80px;" }) 
    .Format("#") 
    .Min(Model.MinValue) 

編輯: 我忘了說,最小值從Web服務來了。

回答

0

您可以使用這樣的事情,而不是將產生需要

public class YourModel 
{ 
    [IntegerValidator(MinValue = 200, MaxValue = int.MaxValue, ExcludeRange = true)] 
    public int Example{get;set;} 
} 

,以獲取有關這個想法的更多信息同樣的要求,請檢查此鏈接IntegerValidator

,你可以使用例如[Range(200,int.MaxValue)]用於整數並且[Range(200,double.MaxValue)]用於雙重以僅指定最小值

這將與客戶端驗證一起工作

如果你不想去這個想法,我認爲你可以處理控件numerictextboxfor的客戶端事件onchange,你可以調用e.preventdefault();然後你可以處理的價值,只要你想

希望這將幫助你

+0

感謝,這是一個很好的問題,實際上它會工作,但有一件事我忘了在這個問題的話。我從服務中獲得最小值,所以我無法在模型 – javiazo 2014-11-06 20:18:43

+0

中記下它,您可以在應用程序中定義一個類,該類將從服務返回的類中繼承,然後您可以定義將鏈接的定製屬性到您的視圖中的具有自定義驗證的Kendo數值控件(GreaterThan(「MinValue」),其中MinValue是從您的服務類「YourParentClass」返回的屬性),在這種情況下,它將與您合作,我認爲,希望這可以幫助您您 – Monah 2014-11-06 20:47:50