【发布时间】:2016-05-10 20:04:50
【问题描述】:
我有一个这样的复选框:
<%= Html.CheckBoxFor(x => x.IsSendingQualitySurvey) %>/>
选中复选框并提交时,我得到典型的 2 个表单值:
IsSendingQualitySurvey: true
IsSendingQualitySurvey: false
这对于 mvc modelbinder 处理复选框的方式完全有效。
然后在控制器动作中:
[HttpPost]
public ActionResult Edit(Guid id, TicketEditViewModel ticketEditViewModel)
ticketEditViewModel.IsSendingQualitySurvey(一个普通的布尔值)总是假的。
我没有任何自定义模型绑定器,它可以在其他地方使用。 奇怪的是,很久以前我在另一个视图中遇到了同样的问题,我不得不手动创建输入,看起来像这样:
<input type="checkbox" value="true" name="<%=Html.NameFor(x => x.IsRequestingVisit) %>" id="<%=Html.NameFor(x => x.IsRequestingVisit) %>" />
这行得通,但是当我将完全相同的内容复制到另一个视图时,该值仍然始终为 false。
问题在哪里?
谢谢。
【问题讨论】:
标签: asp.net-mvc