C# 如何避免@Html.checkbox生成隐藏字段?

C# 如何避免@Html.checkbox生成隐藏字段?,c#,asp.net,.net,asp.net-mvc,asp.net-mvc-4,C#,Asp.net,.net,Asp.net Mvc,Asp.net Mvc 4,使用@Html.CheckBoxFor生成一个隐藏字段。有没有办法避免产生这种情况 我为什么要这么做?我被提供了设计,其中有一些脚本或库用于可视化显示。如果Html采用以下格式(带有标签的复选框),则可以正常工作: 我需要一个补偿设施 但如果复选框和标签之间存在隐藏字段,则该选项无效: <div> <input id="HomeLoanLead_Redraw_flexibility_Value" class="cb" type="checkbox" value="true

使用@Html.CheckBoxFor生成一个隐藏字段。有没有办法避免产生这种情况

我为什么要这么做?我被提供了设计,其中有一些脚本或库用于可视化显示。如果Html采用以下格式(带有标签的复选框),则可以正常工作:


我需要一个补偿设施
但如果复选框和标签之间存在隐藏字段,则该选项无效:

 <div>
<input id="HomeLoanLead_Redraw_flexibility_Value" class="cb" type="checkbox" value="true" name="HomeLoanLead.Redraw_flexibility_Value" data-val-required="The Redraw_flexibility_Value field is required." data-val="true">
<input type="hidden" value="false" name="HomeLoanLead.Redraw_flexibility_Value">
<label for="HomeLoanLead_Redraw_flexibility_Value"> I want to make extra repayments </label>
<i class="tooltip-icon" data-icon="loan"></i>
</div>

我想额外还款
如果我尝试使用
,我恐怕在后期操作中无法使用开箱即用的模型绑定


请提供帮助。

否,帮助程序生成隐藏的输入是有充分理由的(未选中的复选框不会回发,它确保回发值以进行绑定)。调整脚本或检查助手生成的html并手动重新创建(隐藏输入只需位于复选框之后)@StephenMuecke(隐藏输入只需位于复选框之后)“,你是说,如果我添加html输入标记,并在回发时添加一个隐藏字段,我将无法在模型绑定中获取值?@StephenMuecke如果我使用html输入类型=复选框,有没有办法在回发操作中自动获取值绑定到模型,我的意思是在之后的任何地方-它可能是表单中的最后一个元素。@Stephenmueke我不明白的是,我总是在返回表单值时检查表单值,我使用
“”+Request.form[“…
来处理丢失的(null)表单值。我永远不需要那个隐藏字段。
 <div>
<input id="HomeLoanLead_Redraw_flexibility_Value" class="cb" type="checkbox" value="true" name="HomeLoanLead.Redraw_flexibility_Value" data-val-required="The Redraw_flexibility_Value field is required." data-val="true">
<input type="hidden" value="false" name="HomeLoanLead.Redraw_flexibility_Value">
<label for="HomeLoanLead_Redraw_flexibility_Value"> I want to make extra repayments </label>
<i class="tooltip-icon" data-icon="loan"></i>
</div>