【发布时间】:2011-06-19 06:46:00
【问题描述】:
在 MVC 应用程序中,我想动态渲染表单的某些部分(例如 Controller 端的 PartialView)
在部分视图中,我没有 Html.BeginForm(),因为表单标签已经呈现。
@model Introduction.Models.Human
<div>
@Html.EditorFor(model => model.MarriageInformation.SpouseDetails)
<div class="editor-label">
@Html.LabelFor(model => model.MarriageInformation.DOM)
</div>
<div class="editor-field">
@Html.EditorFor(model => model.MarriageInformation.DOM)
@Html.ValidationMessageFor(model => model.MarriageInformation.DOM)
</div>
</div>
我面临的问题是在这种情况下 EditorFor 不返回所有 data-val-* 属性。
<div>
<div class="editor-label">
<label for="MarriageInformation_SpouseDetails_Name">Name</label>
</div>
<div class="editor-field"><input class="text-box single-line" id="MarriageInformation_SpouseDetails_Name" name="MarriageInformation.SpouseDetails.Name" type="text" value="" />
这是设计使然还是我在这里遗漏了什么?这里有什么工作吗?
我正在考虑的选项是在 ajax 加载之后 - 剥离表单并注入内部内容。
【问题讨论】:
标签: c# asp.net-mvc-3