首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >HTML助手TextBoxFor

HTML助手TextBoxFor
EN

Stack Overflow用户
提问于 2013-04-15 10:41:46
回答 1查看 1.4K关注 0票数 1

下面的代码是我的cshtlm页面:

代码语言:javascript
复制
@using (Html.BeginForm("Optional", "ConfigurationSilo2", FormMethod.Post, new { id = "storeDataForm" }))
{          
     @Html.TextBoxFor(x => x.Height)  

    <div align="right">
        <input type="submit" id="Avanti" value="@ViewRes.ConfigurationString.buttonNext" name="@ViewRes.ConfigurationString.buttonNext" />
    </div>
}

我生成的html代码是:

代码语言:javascript
复制
<form action="/ConfigurationSilo2/Optional" id="storeDataForm" method="post">

     <input data-val="true" data-val-number="The field Height must be a number." data-val-required="The Height field is required." id="Height" name="Height" type="text" value="0" />          
    <div align="right">
        <input type="submit" id="Avanti" value="Next" name="Next" />
    </div>
</form>

这是我的模型代码类:

代码语言:javascript
复制
public class Spondina
{
    public int Height { get; set; }
    public int Quantity { get; set; }
    public float UnitPrice { get; set; }
    public float TotalCost { get; set; }
}

为什么我的输入标签中有标签data-val data-val-number data-val required

EN

Stack Overflow用户

回答已采纳

发布于 2013-04-15 10:48:42

这就是MVC验证的开始。您的模型上有数据注释吗?我猜Height属性对它有[Required]吗?这些属性由非突出的客户端验证框架使用。下面是输入助手中添加这些标记的行:

代码语言:javascript
复制
tagBuilder.MergeAttributes(htmlHelper.GetUnobtrusiveValidationAttributes(name, metadata));

HtmlHelper有一个ClientValidationRuleFactory,它在HtmlHelper的构造函数中初始化,其中包括一个ClientDataTypeModelValidatorProvider,它检查模型的元数据,并在模型中的数字类型的情况下应用适当的验证规则。如果您在模型中启用了客户端验证和数字类型,例如Height作为int,则在呈现期间,帮助程序将不引人注目的客户端验证注入到这些输入中。

票数 2
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16013171

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档