Asp.net mvc Html.checkboxforposting false value to controller
上面的html助手方法生成以下html代码Asp.net mvc Html.checkboxforposting false value to controller,asp.net-mvc,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 4,上面的html助手方法生成以下html代码 @Html.CheckBoxFor(m => m.Close, new { disabled = "disabled" }) 当我提交表格时,它只会发回false。。。你知道这是什么吗?我在fiddler中检查了post back值 禁用的控件不会回发。由于@Html.CheckBoxFor()生成复选框和带有默认值(false)的隐藏输入,因此只回发隐藏输入,并且Close的值为false。这是在控制器中检查false或notfalse
@Html.CheckBoxFor(m => m.Close, new { disabled = "disabled" })
当我提交表格时,它只会发回false。。。你知道这是什么吗?我在fiddler中检查了post back值 禁用的控件不会回发。由于
@Html.CheckBoxFor()
生成复选框和带有默认值(false
)的隐藏输入,因此只回发隐藏输入,并且Close
的值为false。这是在控制器中检查false或notfalse的方法:
<input checked="checked" data-val="true" data-val-required="The Close field is required." disabled="disabled" id="Close" name="Close" type="checkbox" value="true">
<input name="Close" type="hidden" value="false">
啊,谢谢,你知道让只读/禁用复选框提交回控制器的方法吗?由于它不可编辑,请使用
@Html.hiddenFor(m=>m.Close)
这样它会发回,如果你还想要属性的视觉指示,请添加@DisplayFor(m=>m.Close)
@DisplayFor(m=>m.Close)完成这项工作
var isChecked = Request.Form["Modelname"];