【问题标题】:Kendo NumericTextBox - prevent autocorrect when entering lower than Min valueKendo NumericTextBox - 输入低于最小值时防止自动更正
【发布时间】:2014-11-06 19:49:35
【问题描述】:

我有一个 ASP.NET 项目,我在其中使用了 Kendo Numeric TextBox 元素。我将最小值设置为 200(在示例中),当用户输入较低的值时,输入会自动更改为最小值。

有什么方法或属性可以让我避免这种情况并将该字段显示为红色或错误,而不是自动更正为最小值?

这是我的代码:

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

编辑: 我忘了说最小值来自网络服务。

【问题讨论】:

    标签: asp.net kendo-ui kendonumerictextbox


    【解决方案1】:

    您可以使用类似这样的东西来产生您需要的相同要求

    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();然后您可以根据需要处理该值

    希望对你有帮助

    【讨论】:

    • 谢谢,这是一个很好的问题,实际上它会起作用,但是我忘了在问题中说一件事。我从服务中得到最小值,所以我不能在模型中写下来
    • 您可以在您的应用程序中定义一个类,该类将从服务返回的类继承,然后您可以定义自定义属性,您将链接到具有自定义的视图中的剑道数字控件验证( GreaterThan("MinValue") 其中 MinValue 是从您的服务类“YourParentClass”返回的属性),在这种情况下,我认为它会与您一​​起使用,希望这对您有所帮助
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-13
    相关资源
    最近更新 更多