1

我正在尝试对用户必须选择一个选项的单选按钮集进行一些验证。我正在使用 jquery.validate.unobtrusive.js。为了验证复选框和文本框,我正在使用

     [MustBeTrue(ErrorMessage = "You must 18")]` 
     public bool IsEighteenYear { get; set; }    
     [Required(ErrorMessage = "Your first name is required.")]
     public string FirstName {get; set;} 

分别在模型中。单选按钮是否有类似的方法?像我一样说

    public int Prefix { get; set;} 

在模型中哪些是单选按钮?

我的观点看起来像

    @Html.CheckBoxFor(m => m.Is18)
    @Html.TextBoxFor(m => m.FirstName)
    @Html.RadioButtonFor(m => m.Prefix)
4

2 回答 2

3

尝试

[Required()]
public string Prefix { get; set;}

@Html.RadioButtonFor(m => m.Prefix, "Mr.") Mr.
@Html.RadioButtonFor(m => m.Prefix, "Ms.") Ms.

诀窍是使用字符串类型,以便您可以强制执行要求。

于 2013-09-17T15:17:14.023 回答
1

在我看来,更好的方法是使用可空值。例如:

public int? Prefix { get; set;}

这样,您可以将 [Requried] 用于值类型(也包括枚举),并且您不必处理字符串值的解析。

于 2014-11-27T16:14:41.970 回答