Asp.net mvc 在MVC模型中读取复选框值
我已经研究了在Index.cshtml文件中读取支票簿值的各种方法,但到目前为止,似乎没有一种方法适合我Asp.net mvc 在MVC模型中读取复选框值,asp.net-mvc,visual-studio-2019,Asp.net Mvc,Visual Studio 2019,我已经研究了在Index.cshtml文件中读取支票簿值的各种方法,但到目前为止,似乎没有一种方法适合我 <!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <title>@ViewData["Ti
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>@ViewData["Title"] - Logger Index</title>
<link rel="stylesheet" href="~/lib/bootstrap/dist/css/bootstrap.min.css" />
<link rel="stylesheet" href="~/css/site.css" />
</head>
<body>
@using (Html.BeginForm(new { action = "Employees" }))
{
<header>
<fieldset>
<div>
@Html.CheckBox("item1", true))
<label for="coding">Coding</label>
</div>
<div>
@Html.CheckBox("item1", false)
<label for="music">Music</label>
</div>
</fieldset>
<nav class="navbar navbar-expand-sm navbar-toggleable-sm navbar-light bg-white border-bottom box-shadow mb-3">
<div class="container">
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target=".navbar-collapse" aria-controls="navbarSupportedContent"
aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<ul class="navbar-nav flex-grow-1">
<li>@Html.ActionLink("Logger", "Employees", new { area = "" }, new { @class = "navbar-brand" }),</li>
</ul>
我试图返回各种复选框值,用于创建查询字符串,而不是固定的查询字符串。好的,我添加到视图的顶部
@model LogBook.Models.Employees
还将@复选框更改为
@CheckBoxFor(m=>m.item1,新的{@class=“Employees”})
在顶部和控制器中
public IActionResult Employees2(Employees model)
如您所见,我将item1设置为true,item2设置为default为false。当我在调试模式下运行程序时,我让它在
public IActionResult Employees2(Employees model)
{
bool item1 = model.item1;
bool item2 = model.item2;
Model.item1和Model.item2仍然为false。好的,我添加到视图的顶部
@model LogBook.Models.Employees
还将@复选框更改为
@CheckBoxFor(m=>m.item1,新的{@class=“Employees”})
在顶部和控制器中
public IActionResult Employees2(Employees model)
如您所见,我将item1设置为true,item2设置为default为false。当我在调试模式下运行程序时,我让它在
public IActionResult Employees2(Employees model)
{
bool item1 = model.item1;
bool item2 = model.item2;
Model.item1和Model.item2仍然为假。找到了答案。如果您使用@ActionLink返回控制器,它将不会返回与我的模型相关的CheckBox、RadioBox等内容的值。我要做的是使用输入提交和{HttpPost]索引例程。然后我可以看到我的模型中复选框的更改。然后将视图重定向到我的控制器例程,该例程处理事情并将结果发送到视图。那么为什么使用@ActionLink按钮不返回绑定到复选框的模型项呢?找到了答案。如果使用@ActionLink返回控制器,它将我不会返回复选框、RadioBox等绑定到我的模型的值。我要做的是使用输入提交和{HttpPost]索引例程。然后我可以看到我的模型中复选框的更改。然后将视图重定向到我的控制器例程,该例程处理事情并将结果发送到视图。那么为什么使用@ActionLink按钮不返回绑定到复选框的模型项呢?到底是什么不起作用?通常,您希望控制器的操作能够接受t模型的参数,以便ModelBinder处理输入并为您“打包”它们。在这种情况下,您的方法将看起来是public IActionResult Employees(Employees模型)然后,您可以阅读model.item1和model.item2并根据需要使用它们。到底什么不起作用?通常,您希望控制器操作接受模型的参数,以便ModelBinder处理输入并为您“打包”它们。在这种情况下,您的方法看起来是public IActionResult Employees(员工模型),然后您可以阅读model.item1和model.item2并根据需要使用它们。