我正在尝试创建属性并添加DataAnnotation [Required]
以与RadioButtonFor
一起使用。加载页面时RadioButtonFor
为unchecked
,我需要这个,因为用户需要从下一步中选择两个选项之一(是/否)。问题是我不能使这个属性成为必需。
我怎么能这样做?
模型
[Required(ErrorMessage="Please, choose one option")]
public Boolean isGroupMember { get; set; }
HTML
<div class="form-group">
<label for="@Html.IdFor(model => model.isGroupMember )" class="cols-sm-2 control-label">Choose one option ? <img src="~/Imagens/required.png" height="6" width="6" title="requerido"></label>
<table class="table">
<tr>
<td><strong>Yes</strong>@Html.RadioButtonFor(model => model.isGroupMember , 1, new { Class = "form-control" })</td>
<td><strong>No</strong>@Html.RadioButtonFor(model => model.isGroupMember , 0, new { Class = "form-control" })</td>
</tr>
</table>
@Html.ValidationMessageFor(model => model.isGroupMember )
</div><!--/member group-->
答案 0 :(得分:3)
布尔字段的2个可能值为spring.servlet.multipart.max-file-size
和spring.servlet.multipart.max-request-size
。布尔字段的默认值为true
。因此,即使用户没有在表单中选择任何内容,当模型验证框架检查此属性的值时,值(false
,默认值)是有效的布尔值,因此将通过模型验证。
要使所需的验证工作,您需要将其设为nullable布尔类型
false
我还建议切换到PascalCasing获取属性名称(false
而不是[Required(ErrorMessage = "Please, choose one option")]
public Boolean? isGroupMember2 { get; set; }
)
IsGroupMember2
您也可能想要将单选按钮的值更改为isGroupMember2
和[Required(ErrorMessage = "Please, choose one option")]
public bool? IsGroupMember2 { get; set; }
,而不是True
和False
。
1
答案 1 :(得分:1)
尝试使用以下代码替换单选按钮。
access_token