如何建立一个复选框,并需要经过一个或多个
问题描述:
我有以下代码(三个复选框):如何建立一个复选框,并需要经过一个或多个
@Html.CheckBoxFor(x => @Model.FirstSelected) @Html.Label("First:")
@Html.CheckBoxFor(x => @Model.SecondSelected) @Html.Label("Second:")
@Html.CheckBoxFor(x => @Model.ThirdSelected) @Html.Label("Third:")
我需要验证消息的检查,以选择一个或多个。
答
如果你想在发布前验证这个,你可以使用javascript/jQuery。 在等形式添加onsubmit事件:
onsubmit = "return validateForm()"
并使用像一个javascript:
(未测试)
<script type="text/javascript">
function validateForm() {
var FirstSelected = document.getElementById('FirstSelected');
var SecondSelected = document.getElementById('SecondSelected');
var ThirdSelected = document.getElementById('ThirdSelected');
if (!FirstSelected.checked && !SecondSelected.checked && !ThirdSelected.checked) {
alert("Please choose one or more.");
return false;
}
}
</script>
如果你想从控制器,那么你会做做类似:
if (!yourmodel.FirstSelected && !yourmodel.SecondSelected && !yourmodel.ThirdSelected){
//do your stuff here and return to the view
ViewBag.ErrorMessage = "Please choose one or more.";
return View(yourmodel);
}
在视图中有地方展示
@ViewBag.ErrorMessage