【发布时间】:2012-05-04 13:10:59
【问题描述】:
我正在为我的视图使用强类型模型。我有一个禁用的文本框,我使用 javascript 更新其值。使用 this 呈现文本框
<%: Html.TextBoxFor(model => model.TotalAmount, new { disabled = "disabled"})%>
这会呈现一个名称和 ID 为“TotalAmount”的文本框。 TotalAmount 也是我模型上绑定到此视图的属性。
在视图中更新其值的javascript在其函数中是这样的:
document.getElementById('TotalAmount').value = {assigning new value here};
该函数确实被调用,当我在另一个可编辑文本框中更改某些值时,我可以看到禁用文本框中的值。但是,当我将此表单发布到我的操作方法时,如下所示:
[HttpPost]
public ActionResult Process (ProcessVM FormPostVM)
{
}
禁用的文本框属性 [TotalAmount] 仍然具有旧值,但我修改的可编辑文本框包含我输入的新值。为什么禁用的文本框不包含 javascript 更新的值?
我尝试过使用
ModelState.Remove("TotalAmount");
在上面的操作方法中,但我已经认为它不起作用。
任何线索,提示?
感谢您的宝贵时间......
【问题讨论】:
-
一分钟4个答案,全部正确。