我在我的视图页面上写了下面的代码;
@Html.CheckBox("ChxName",true)
我得到以下结果:
<input checked="checked" id="ChxName" name="ChxName" type="checkBox" value="true" /> <input name="ChxName" type="hidden" value="false" />
为什么有一个输入元素命名为与复选框相同?
解决方法
未选中的复选框不会发布,因此隐藏字段(设置为false)允许模型绑定仍然有效。
看看Request.Form上的回帖。如果选中该复选框,您会看到:
ChxName=true&ChxName=false
模型绑定器使用第一个值。
并且,如果未选中此框,您将看到:
ChxName=false