【发布时间】:2010-01-07 08:43:33
【问题描述】:
我的应用发生了一些非常奇怪的事情:
我的 ViewModel 中有以下属性:
public int? StakeholderId { get; set; }
它在 部分 视图中呈现如下:
<%= Html.Hidden("StakeholderId", Model.StakeholderId) %>
表单提交,相关控制器动作生成一个id并更新模型,然后返回与更新模型相同的视图
我遇到的问题是隐藏字段在其“值”属性中没有任何内容,即使 StakeholderId 现在有一个值。
如果我只是自己输出值,它会显示在页面上,所以我可以通过这样做来呈现值:
<input type="hidden" id="StakeholderId" name="stakeholderId" value="<%: Model.StakeholderId %>" />
但是很奇怪,helper 没有获取更新后的值?
(我正在使用 jQuery 提交表单并将操作结果呈现到 div 中,但是我已经检查过,并且在 jQuery 对其进行任何操作之前,我返回的 html 已经是错误的,所以我认为没有太多做任何事)
更新
我后来发现我也可以在我的控制器操作返回部分视图之前清除相关的 ModelState 键。
【问题讨论】:
标签: c# .net asp.net-mvc html-helper