【问题标题】:how to implement Checkboxes in MVC 3?如何在 MVC 3 中实现复选框?
【发布时间】:2012-04-12 10:10:46
【问题描述】:

您好,我对使用 C# 的 MVC 3 很陌生。我正在使用实体框架和数据库优先方法来自动生成代码。但问题是,我试图找到有关使用 C# 代码在 MVC3 中插入​​复选框的信息,但我找不到有用的网站。 我可以使用 HTML 标签插入复选框:

<input type="checkbox" name="Science" id="s1" value="Science" />
<input type="checkbox" name="Biology" id="b1" value="Biology" />
<input type="checkbox" name="Chemistry" id="c1" value="Chemistry" />

但是如何在数据库中插入复选框值并验证是否只选中了一个复选框?

例如,我有一个名为 Paper 的表,其中有:

Paper_Title - textbox
Paper_Details - textbox
Category - Checkboxes (e.g. Science, biology, chemistry)
Comments - textbox.
Submit-button

【问题讨论】:

  • 您的 html 示例中的 Checkboxes 实际上是 Textboxes。类型=“文本”?

标签: c# asp.net-mvc asp.net-mvc-3 razor checkbox


【解决方案1】:

使用单选按钮,然后有一个类别的枚举(比如 enumCategories)。有一个类型为 enumCategories 的模型类别,然后在回发中根据选中的单选按钮设置模型。 希望这能让您对这种方法有一个详细的了解。

【讨论】:

    【解决方案2】:

    我不认为这里需要复选框,它们更多地用于多选项目。单选按钮或下拉菜单更适合。就个人而言,我会说下拉菜单对你来说更好,因为已经有一个为它构建的编辑器模板,例如:

    型号:

    我已将以下内容添加到属性中

    public string Category { get; set; }
    public IEnumerable<SelectListItem> Categories { get; set; }
    

    在加载方法中,我在其中放置了两个示例类别:

    Categories = new List<SelectListItem>
                {
                    new SelectListItem 
                    { 
                        Selected = false,
                        Text = "Chemistry",
                        Value = "Chemistry"
                    },
                    new SelectListItem 
                    { 
                        Selected = false,
                        Text = "Science",
                        Value = "Science"
                    }
                };
    

    查看:

    @Html.DropDownListFor(m => Model.Category, Model.Categories)
    

    【讨论】:

    • 当我输入它时显示错误“public IEnumerable Categories { get; set; }” Erroris -- 缺少参考。
    • 您需要使用对 System.Web.Mvc 和 System.Collections.Generic 的引用
    猜你喜欢
    • 2018-05-10
    • 1970-01-01
    • 1970-01-01
    • 2010-11-15
    • 1970-01-01
    • 2012-03-02
    • 2011-05-30
    • 1970-01-01
    • 2020-04-07
    相关资源
    最近更新 更多