【发布时间】:2016-11-20 21:48:11
【问题描述】:
@model eDurar.Models.BuyOnlineAddress
@using (Html.BeginForm())
{
@Html.ValidationSummary(true)
<fieldset>
<legend>BuyOnlineAddress</legend>
<div class="editor-label">
Address Details
</div>
<div class="editor-field">
@Html.EditorFor(model => model.Details, new {@required="required" })
@Html.ValidationMessageFor(model => model.Details)
</div>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
}
这是局部视图,在生成的html中,没有必填属性
当我在 html 编辑器中手动插入时,效果很好,但这种方法通常适用于普通视图
我这次没有加载任何脚本
【问题讨论】:
-
您可以在 MVC-5 中使用
EditorFor()添加 html 属性(您至少需要MVC-5.1). YourTextBoxFor(). And do not use HTML-5 validation. Add a[Required]` 属性到您的模型属性,这样您就可以同时获得客户端和服务器端验证。 -
@StephenMuecke 我用edmx模型,不能做注解,通常这个方法有效,
-
这是 MVC3 scafolder 自动生成的代码
-
它从来没有工作过,也永远不会。您将
new {@required="required" }添加为additionalViewData,而不是html 属性(您使用this overload。编辑时不要在视图中使用数据模型。使用视图模型。
标签: validation asp.net-mvc-3 razor