MVC隐藏复选框始终提交为已选中

时间:2011-11-04 22:35:53

标签: asp.net-mvc asp.net-mvc-3 checkbox

我有一些必须尽快解决的问题

在视图中,我有一个隐藏的复选框:

<div class="D2">@Html.CheckBox("none", false, new { type="hidden", id = "none" })</div>

//Apply button will submit the form
$('#apply').click(function () {
...
     $("#submit").click();
...
});

出于某种原因,它总是在隐藏时提交检查。如果我删除隐藏的属性,它工作得很好。 我必须这样做,因为它是修复代码的最快方法。

2 个答案:

答案 0 :(得分:2)

您没有设置隐藏属性 - 您正在设置类型属性。

我想你想要

<input type="checkbox" id="none" style="visibility:hidden;" />

<input type="hidden" id="none" />

试试这个,而不是

@Html.CheckBox("none", false, new { style="visibility:hidden", id = "none" })

答案 1 :(得分:0)

通过传入type =“hidden”,您可以使元素不再是复选框。它现在是一个隐藏的输入。您是否想要获取隐形复选框?如果是这样,试试

@Html.CheckBox("none", false, new { id = "none", style="display: none" })