gpt4 book ai didi

asp.net - EditorFor 的最小值和最大值

转载 作者:行者123 更新时间:2023-12-02 11:25:50 26 4
gpt4 key购买 nike

我一直在尝试使用此代码在我的 EditorFor 上设置最小值和最大值:

<label id="LbStartYear" style="width: 200px">From Date: @Html.EditorFor(model => model.SelectedYearBegin, new { htmlAttributes = new { @min = "0", @max = "20" } })</label>

但没有成功。从不设置最小值和最大值。我尝试从 0 中删除引用和 20 ,也试过使用和不使用 @ .

有任何想法吗?

最佳答案

只需使用 Range模型属性上的 DataAnnotation 属性。通过使用此属性,您可以限制用户输入不在范围内的任何其他数字。

导入以下命名空间 -

using System.ComponentModel.DataAnnotations;
using System.ComponentModel;

然后用 Range 装饰您的属性(property)属性 -
[Range(0,20)]
public int SelectedYearBegin { get; set; }

有关范围属性的更多信息 - https://msdn.microsoft.com/en-us/library/system.componentmodel.dataannotations.rangeattribute(v=vs.110).aspx

您可以通过在 Web.config 中启用它来获得客户端验证 -
 <add key="ClientValidationEnabled" value="true"/> 
<add key="UnobtrusiveJavaScriptEnabled" value="true"/>

确保您不引人注意地链接 JQuery 并验证 JS 文件。

或者,如果您仍想设置 minmaxEditorFor ,那么您需要获得 MVC 5.1 或更高版本。下面的代码适用于 MVC 5.1 及更高版本。
@Html.EditorFor(model => model.SelectedYearBegin, new { htmlAttributes = new { @min = "0", @max = "20" } })

如果您不想使用 MVC 5.1 及更高版本,那么只需使用 TextBoxFor ——
@Html.TextBoxFor(model => model.SelectedYearBegin, new { type = "number", min = 0, max = 100 })

关于asp.net - EditorFor 的最小值和最大值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34639312/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com