Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 获取mvc中复选框的值,c#_Asp.net Mvc - Fatal编程技术网

Asp.net mvc 获取mvc中复选框的值,c#

Asp.net mvc 获取mvc中复选框的值,c#,asp.net-mvc,Asp.net Mvc,我有一个带有一些控件的窗体。这里有一个复选框(在视图上)。在控制器中,我调用了两个函数:一个用于获取保存的值,另一个用于保存值。 函数很好,但在我的形式上我总是正确的,即使在我的课堂上我也有错误的 在控制器中,我有: return View("Settings", (K.NotificationsSettings)comm.Result); // comm.Resultset return false form my gfield called Enabled K.通知设置是一个具有以下结构的

我有一个带有一些控件的窗体。这里有一个复选框(在视图上)。在控制器中,我调用了两个函数:一个用于获取保存的值,另一个用于保存值。 函数很好,但在我的形式上我总是正确的,即使在我的课堂上我也有错误的

在控制器中,我有:

return View("Settings", (K.NotificationsSettings)comm.Result);
// comm.Resultset return false form my gfield called Enabled
K.通知设置
是一个具有以下结构的类:

[数据合同] 公共类通知设置 {

在我看来,第一行是:

 <%@ Page Title="" Language="C#" MasterPageFile="~/Views/Shared/Child.Master"      Inherits="System.Web.Mvc.ViewPage<K.NotificationsSettings>" %>

此复选框的代码为:

< input id="Enabled" checked="checked" type="checkbox" name="Enabled" value ="<%=Model.Enabled%>"/>

但我的复选框总是正确的。
需要将此
“=Model.Enabled%>”
?有人能帮我吗?

您应该使用相应的Html帮助程序来选中复选框:

<%: Html.CheckBoxFor( m => m.Enabled ) %>
m.已启用)%>

助手执行一些特殊的操作;它同时输出一个复选框(使用
value=“true”
)和一个隐藏输入(使用
value=“false”
)。原因是,如果未选中复选框,则该复选框不会发布值。只有发布日期中的值才会在modelbinding中更新,因此,如果html表单中只有一个复选框,并且您取消选中了它,则不会更新Enabled属性。

您应该使用相应的html帮助程序来创建复选框:

<%: Html.CheckBoxFor( m => m.Enabled ) %>
m.已启用)%>

助手执行一些特殊的操作;它同时输出一个复选框(使用
value=“true”
)和一个隐藏输入(使用
value=“false”
)。原因是,如果未选中复选框,则该复选框不会发布值。只有发布日期中的值才会在modelbinding中更新,因此,如果html表单中只有一个复选框,并且您取消选中了它,则Enabled属性不会更新。

要选中复选框,必须使用n包含属性
checked
o值:

<input type="checkbox" name="MyCheckbox" value="MyValue" checked>

提交表单时,属性
的值将通过网络发送,并选中复选框


但是更好的方法是像Marnix建议的那样使用HtmlHelper,因为这样你不必自己处理html创建,你也可以免费获得模型绑定。

要选中复选框,你必须包含属性
checked
,没有值:

<input type="checkbox" name="MyCheckbox" value="MyValue" checked>

提交表单时,属性
的值将通过网络发送,并选中复选框


但是更好的方法是像Marnix建议的那样使用HtmlHelper,因为这样你不必自己处理html创建,你也可以免费获得模型绑定。

我尝试像这里这样修改:但没有任何改变。我尝试使用模型m,但不起作用。你需要替换e使用我的答案中的代码片段重新编写
。它将生成您需要的所有html标记。我尝试按如下方式进行修改:但没有任何更改。我尝试使用Model而不是m,但不起作用。您需要用我答案中的代码片段替换整个
。它将生成您需要的所有html标记需要。