CheckBox /单选按钮需要验证JQuery MVC

时间:2013-01-21 07:43:55

标签: c# jquery asp.net-mvc radio-button

所以我有这个模型:

    public int ID { get; set; }
    [Required(ErrorMessage = "A Name is required")]
    public string Name { get; set; }
    public bool GreenCircle { get; set; }
    public bool BlueSquare { get; set; }
    public bool BlackDiamond { get; set; }
    public bool TerrainPark { get; set; }

目前我所拥有的View允许用户创建配置文件,为此处列出的bool属性设置Checkbox。

我正在寻找一种设置JQuery Validation的方法,该方法需要将这些bool属性中的一个设置为true,因此我认为我应该使用RadioButtons,但我不太确定我能做什么在视图中设置它们或者我如何执行该类型的验证时对它们进行分组。

有什么想法吗?我在这里学习,如果你必须,请指出我正确的研究方向;提前谢谢你。

1 个答案:

答案 0 :(得分:1)

使用枚举。例如:

public enum MyEnum
{
    GreenCircle,
    BlueSquare,
    BlackDiamond,
    TerrainPark
}

然后在模型中使用它而不是四个不同的布尔属性。

public class MyModel
{
    public MyEnum MyOption { get; set; }
}

然后在视图中生成单选按钮。

@using (Html.BeginForm())
{
    @Html.RadioButtonFor(m => m.MyOption, (int)MyEnum.BlackDiamond);
    <span>Black Diamond</span><br />
    @Html.RadioButtonFor(m => m.MyOption, (int)MyEnum.BlueSquare, 
        new { @checked = "true" });
    <span>Blue Square</span><br />
    @Html.RadioButtonFor(m => m.MyOption, (int)MyEnum.GreenCircle);
    <span>Green Circle</span><br />
    @Html.RadioButtonFor(m => m.MyOption, (int)MyEnum.TerrainPark);
    <span>Terrain Park</span><br />
}

备注:也许你可以实现一个HTML帮助器来为你生成单选按钮标记。