【发布时间】:2011-09-27 14:50:14
【问题描述】:
嗨,
我在 ASP.NET MVC 中有一个强类型视图。为了在未连接到字段(例如 TextBoxFor)时跟踪模型的属性,我将不得不使用 HTML.HiddenFor 元素。这使得操作数据并将其返回到服务器变得很容易。
现在说我的强类型视图包含一个局部视图,我从主视图中提供了一些我的模型,如下所示:
<% Html.RenderPartial("~/Views/Ad/Partial/ListSettings.ascx", Model.ALS); %>
所有用于读取和操作 ALS 属性(复杂对象)的 javascript 都放置在局部视图中,以便在其他主视图上使用局部视图。
在这个局部视图中,我还有以下几行:
<%: Html.HiddenFor(c => c.CP) %>
<%: Html.HiddenFor(c => c.L) %>
<%: Html.HiddenFor(c => c.OB) %>
<%: Html.HiddenFor(c => c.ST)%>
<%: Html.HiddenFor(c => c.P)%>
这可以很好地被 javascript 读取,但是在提交视图时,这些属性的设置不会跟随服务返回?
我确实尝试将它们放在主视图中,而不是像这样:
<%: Html.HiddenFor(c => c.ALS.CP) %>
<%: Html.HiddenFor(c => c.ALS.L) %>
<%: Html.HiddenFor(c => c.ALS.OB) %>
<%: Html.HiddenFor(c => c.ALS.ST)%>
<%: Html.HiddenFor(c => c.ALS.P)%>
并将 javascript 指向正确的字段,但即使这样可行,问题是局部视图不会包含它需要的所有内容,我必须在放置局部视图的每个主视图中实现这些隐藏字段?
如何处理?
致以最诚挚的问候
【问题讨论】:
标签: .net asp.net-mvc view partial-views hidden-field