使用MVC3和Ajax.BeginForm我惊奇地发现mvc ajax表单提交了属性disabled =“disabled”的元素。
我测试了选择和文本输入。
我很惊讶因为它们不应该被提交,并且在使用Html.BeginForm时它们不会。
是否有隐藏的选项或解决方法?
[编辑示例]
@using (Ajax.BeginForm("Action", "Control", new AjaxOptions() { HttpMethod = "POST" }))
{
<input type="text" name="_enabled" value="_enabled" />
<input type="text" name="_disabled" value="_disabled" disabled="disabled" />
<input type="submit" value="POST" />
}
Html.BeginForm不会发布_disabled值。
答案 0 :(得分:0)
您可以在其他隐藏元素中设置禁用元素值:
<input type="text" name="Id" id="Id" value="5" />
<input type="hidden" name="Id" id="Id" value="5" />
和或:
@Html.TextBoxFor(m => m.Id)
@Html.HiddenFor(m => m.Id)