在MVC中验证Html.EditorFor()

时间:2015-02-27 06:45:03

标签: jquery asp.net-mvc html5 data-annotations

在我的模型中,我使用

[Display(Name ="No Of Children")]       
public Nullable<int> NoOFChildren { get; set; } 

在我看来,我使用

<div class="col-lg-6">
    @Html.EditorFor(model => model.NoOFChildren, new { htmlAttributes = new { @class = "form-control", placeholder = "No Of Children" } })
</div>

当我运行页面时,它将显示文本框,如下图

enter image description here

我想将此文本框限制为接受小于零的数字。当数字为零时,应禁用向下箭头。我怎么能这样做?

jQuery验证可能是一个选项,但我不想使用它,除非没有替代品是有价值的。是否有可以执行此操作的DataAnotation验证属性或可以自动执行的任何HTML5元素而无需编写其他脚本?

1 个答案:

答案 0 :(得分:1)

您可以使用jquery执行此操作,也可以在模型上添加数据anotation

[Display(Name ="No Of Children")]       
[Range(0, 15, ErrorMessage = " ")]
public Nullable<int> NoOFChildren { get; set; } 

这应该限制用户。
同时将ErrorMessage留空(内部有空格,技术上不为空)将不会在视图上显示错误消息

<强>更新 你可以试试这个:

 @Html.EditorFor(model => model.NoOFChildren, new { htmlAttributes = new { @class = "form-control", placeholder = "No Of Children",min="0" ,max="100",step="5" } })

这将min设为0 max为100,每次点击增加5。