Asp.net mvc 如何在asp.net mvc中使用razor检查查看页面中是否选中复选框?
我是asp.net mvc的新手,为show me复选框组件编写以下代码:Asp.net mvc 如何在asp.net mvc中使用razor检查查看页面中是否选中复选框?,asp.net-mvc,Asp.net Mvc,我是asp.net mvc的新手,为show me复选框组件编写以下代码: @Html.CheckBox("FlatFile",false) 我想写razor c#script来检查这个复选框是否被选中,然后做一些事情,我不想写javascript或任何东西,我只想为此目的编写c#razor脚本代码 我该如何写呢?您可以在控制器操作中使用FormCollection来检查这一点。 尝试使用以下代码: [HttpPost] public ActionResult
@Html.CheckBox("FlatFile",false)
我想写razor c#script来检查这个复选框是否被选中,然后做一些事情,我不想写javascript或任何东西,我只想为此目的编写c#razor脚本代码
我该如何写呢?您可以在控制器操作中使用FormCollection来检查这一点。 尝试使用以下代码:
[HttpPost]
public ActionResult Index(FormCollection frm)
{
bool MyBoolValue = Convert.ToBoolean(frm["FlatFile"].Split(',')[0]);
return View();
}
您的复选框代码:
@Html.CheckBox("FlatFile",false)
现在,您可以使用复选框名称(即FlatFile)在控制器中执行以下操作:
public ActionResult Something(IEnumerable<bool> FlatFile)
{
if(FlatFile!= null) --you can give your condition here
{
--do something
}
else
{
--do something else
}
}
这是我的视图代码(即test.cshtml):-
@使用(Html.BeginForm(“test”、“User”、FormMethod.Post、,
新的{enctype=“multipart/form data”})
{
@Html.AntiForgeryToken()
测试复选框
@Html.Label(“选择”):
@复选框(“FlatFile”,false)
@查看包。留言
}
没有js,你就做不到。实现此功能的另一种方法是使用此输入复选框将表单发布到控制器。谢谢,但当单击查看页面中的复选框时,某些操作不会运行。我刚刚添加了一个示例以提供帮助。如果是foreach循环呢?例如,HTML中的复选框是HTML.checkbox(item.Name,false),而在controller中,我们需要检查它是否被选中?
public ActionResult test()
{
return View();
}
[HttpPost]
public ActionResult test(bool FlatFile)
{
if(FlatFile==true)
{
ViewBag.Message = "Selected";
return View();
}
else (FlatFile == false)
{
ViewBag.Message="Not selected";
return View();
}
}
@using (Html.BeginForm("test", "User", FormMethod.Post,
new { enctype = "multipart/form-data" }))
{
@Html.AntiForgeryToken()
<fieldset>
<legend>Test CheckBox</legend>
<table>
<tr>
<td>@Html.Label("Select"):</td>
<td>@Html.CheckBox("FlatFile", false)</td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Check" /></td>
</tr>
<tr>
<td>@ViewBag.Message</td>
</tr>
</table>
</fieldset>
}