📜  如果选中,如何从带有枚举的单选按钮 html asp 为模型赋予价值 - Html (1)

📅  最后修改于: 2023-12-03 15:39:00.656000             🧑  作者: Mango

如果选中,如何从带有枚举的单选按钮 HTML ASP 为模型赋予价值 - HTML

在 HTML ASP 中,单选按钮通常用于允许用户在一组选项中进行选择。它们通常是使用单选按钮来实现的。在 ASP.NET MVC 中,我们可以使用枚举类型来表示选项并将其与单选按钮组合在一起。

枚举类型

枚举类型是 C# 中一种值类型,它允许我们定义一组具有命名值的常量。它们可以用于表示选项,并用于在应用程序的不同部分中共享。以下是一个示例枚举类型的定义:

public enum Gender
{
    Male,
    Female,
    Other
}

在此示例中,我们定义了三种性别选项,即“男性”、“女性”和“其他”。

在 ASP.NET MVC 中使用枚举和单选按钮

要将枚举类型与单选按钮组合在一起,我们可以将枚举类型用作模型属性,并将单选按钮放置在视图中以允许用户选择选项。以下是一个示例模型类:

public class Person
{
    public string Name { get; set; }
    public Gender Gender { get; set; }
}

在此示例中,我们定义了一个 Person 类型,它具有 Name 和 Gender 两个属性。Gender 属性使用上面定义的 Gender 枚举类型。

要在视图中显示单选按钮,我们可以使用以下 HTML 代码:

@model Person
@using (Html.BeginForm())
{
    <div>
        @Html.LabelFor(m => m.Name)
        @Html.TextBoxFor(m => m.Name)
    </div>
    <div>
        @Html.LabelFor(m => m.Gender)
        @Html.RadioButtonFor(m => m.Gender, Gender.Male) Male
        @Html.RadioButtonFor(m => m.Gender, Gender.Female) Female
        @Html.RadioButtonFor(m => m.Gender, Gender.Other) Other
    </div>
    <div>
        <button type="submit">Save</button>
    </div>
}

在此示例中,我们使用 LabelFor 和 TextBoxFor HTML 辅助方法来显示 Name 属性,并使用 RadioButtonFor HTML 辅助方法显示 Gender 属性的单选按钮。RadioButtonFor 方法需要两个参数:属性表达式和选项值。选项值是我们在上面定义的枚举常量之一。

现在,当用户单击“保存”按钮时,将提交表单并将值传递给控制器操作。例如:

[HttpPost]
public ActionResult Save(Person person)
{
    // Save the person object to the database
    // ...
    
    return RedirectToAction("Index");
}

在此示例中,我们使用 HttpPost 特性指定保存操作,该操作将 Person 对象作为参数。当表单提交时,ASP.NET MVC 将使用模型绑定将表单数据自动转换为 Person 对象,并将其传递给 Save 操作。

现在,我们已经学会了如何将枚举和单选按钮组合在一起,并将其用于 ASP.NET MVC 应用程序中的模型。