c# - 如何使用 C# 评估 html 复选框?

标签 c# html mysql razor

我正在尝试将两个不同数据之一发送到数据库,具体取决于用户是否选中了 html 复选框。我不知道如何使用 C# 来评估复选框,不使用 MVC。这是我一直在尝试的简化形式:

@{
    var Category = "";
    var AltCategory = "";

    var db = Database.Open("Inventory");

    var Checkbox_value =(Request["altCategory_checkbox"]=="on") ? true : false;

    if(IsPost && Validation.IsValid()){
        Category = Request.Form["ListCategory"];
        AltCategory = Request.Form["AltCategory"];

        if(Checkbox_value = true){
            Funcs.AddNewProduct(Category);
        }
        else{
            Funcs.AddNewProduct(AltCategory);
        }
        Response.Redirect("~/Members/Products");}
}

和 html:

  <form method="post">
   <fieldset>
      <p><label for="Category">Category:</label>
         <input type="text" name="Category" value="@Request.Form["Category"]" />
      </p>

    <input type="checkbox" name="altCategory_checkbox" id="altCategory_checkbox">
    <label for="altCategory_checkbox">Add new category?</label> 

      <p><label for="AltCategory">New category:</label>
         <input type="text" name="New category" value="@Request.Form["AltCategory"]" />
      </p>

         <p><input type="submit" name="buttonSubmit" value="Add product" /></p> 

    </fieldset>
  </form> 

非常感谢任何帮助,如果这是一个微不足道的问题,我深表歉意。

最佳答案

最终解决方案如下:

 @{
    var Category = "";
    var AltCategory = ""; 

    var db = Database.Open("Inventory");

    if(IsPost){
        Category = Request.Form["ListCategory"];
        AltCategory = Request.Form["AltCategory"];
        bool CategoryCheckbox = Request["CategoryCheckbox"].AsBool(); 

        if(CategoryCheckbox){
            Funcs.AddNewProduct(Category);
        }
        else{
            Funcs.AddNewProduct(AltCategory);
        }
        Response.Redirect("~/Members/Products");}
} 

使用 html:

  <form method="post">
   <fieldset>
      <p><label for="Category">Category:</label>
         <input type="text" name="Category" value="@Request.Form["Category"]" />
      </p>

    @Html.CheckBox("CategoryCheckbox", new { value = "true" })
    <label for="CategoryCheckbox">Add new category?</label>

      <p><label for="AltCategory">New category:</label>
         <input type="text" name="New category" value="@Request.Form["AltCategory"]" />
      </p>

         <p><input type="submit" name="buttonSubmit" value="Add product" /></p> 

    </fieldset>
  </form> 

技巧是使用 bool CategoryCheckbox = Request["CategoryCheckbox"].AsBool(); 将复选框读取为 bool

关于c# - 如何使用 C# 评估 html 复选框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37066889/

相关文章:

c# - 如何使用 Mediator 配置 MassTransit 来发布消息?

c# - asp.net mvc 4 来自站点编码的字母

html - 为父菜单点着色

javascript - 如何添加另一个时区?

mysql - 更新 my.cnf 中的变量

c# - 列出操作复杂度

c# - 我可以在 c# .NET 中强制使用 'this' 关键字吗?

html - 如何在CSS中制作一个多步骤的简单动画?

php - 使用 PHP-MySQL 创建图表

php - mysql_fetch_array() 有效但 mysql_fetch_object() 无效