【问题标题】:MVC: how do reference an input tag in a view, from a controllerMVC:如何从控制器引用视图中的输入标签
【发布时间】:2018-02-08 21:50:57
【问题描述】:

这是我第一次使用 MVC。我正在关注一个教程,并且我已经检查并重新检查了我是否正确地遵循了这些步骤,但是控制器中的一些代码试图在视图中引用和输入标签,以检查是否选中了复选框。它正在生成一个错误“名称 check_public 在当前上下文中不存在”

我有一个名为“index.cshtml”的视图,其中包含以下代码:

 <input type="checkbox" name="check_public" /> <br />

我有一个控制器试图通过名称引用该复选框,代码是

     if (check_public != null) 
        { 
            dbList.Public = "YES"; 
        }
     else 
        { 
            dbList.Public = "NO"; 
        }

它可能是显而易见的和简单的,但我真的被困住了。任何帮助表示赞赏

【问题讨论】:

  • 你的控制器在哪里声明和初始化check_public?你需要从Request
  • 我认为您在控制器操作方法上没有check_publicbool? 类型。
  • 啊,如果我用布尔值声明它?输入操作方法如何让它检查视图中复选框的状态?
  • @LucyViolet 您可以使用包含bool? check_public 属性和CheckBoxFor 的视图模型类将其绑定到控制器操作中。或使用BindAttribute,然后在Include 部分中提及您的复选框输入。
  • 谢谢,这应该可以帮助我取得一些进展。

标签: c# asp.net-mvc


【解决方案1】:

我设法通过在控制器中的 if 语句上方添加以下行来声明变量 check_public 来解决这个问题

      string check_public = Request.Form["check_public"]; 

【讨论】:

    猜你喜欢
    • 2018-01-03
    • 2014-01-21
    • 2012-07-27
    • 1970-01-01
    • 1970-01-01
    • 2011-03-07
    • 2022-01-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多