【问题标题】:MVC hidden checkbox always submits as checkedMVC 隐藏复选框始终提交为选中状态
【发布时间】:2011-12-22 10:08:01
【问题描述】:
我有事情要尽快解决
在视图中我有一个隐藏的复选框:
<div class="D2">@Html.CheckBox("none", false, new { type="hidden", id = "none" })</div>
//Apply button will submit the form
$('#apply').click(function () {
...
$("#submit").click();
...
});
由于某种原因,它总是在隐藏时提交为选中状态。如果我删除隐藏的属性,它就可以正常工作。
我必须这样做,因为它是修复代码的最快方法。
【问题讨论】:
标签:
asp.net-mvc
asp.net-mvc-3
checkbox
【解决方案1】:
您没有设置 hidden 属性 - 您正在设置 type 属性。
我想你想要
<input type="checkbox" id="none" style="visibility:hidden;" />
不是
<input type="hidden" id="none" />
试试这个吧
@Html.CheckBox("none", false, new { style="visibility:hidden", id = "none" })
【解决方案2】:
通过传入 type="hidden",您可以使元素不再是复选框。它现在是一个隐藏的输入。您是否试图获得一个 invisible 复选框?如果是这样试试
@Html.CheckBox("none", false, new { id = "none", style="display: none" })