如何使用MVC3 Razor检测复选框是否被选中
本文关键字:是否 复选框 检测 何使用 MVC3 Razor | 更新日期: 2023-09-27 18:17:20
由于我是MVC框架的新手,我花了几个小时在视图文件中生成一个复选框列表。终于,我可以算出来了。下面是我的代码:
@foreach (var item in Model.GetRoleNames)
{
@Html.CheckBox("chk_" + item.Value, new { value = item.Value })@item.Text<br />
}
但是,我需要检测其中哪些被选中,如果所有的复选框都未选中,则会阻止一些操作。
问题:当我在控制器动作中时,我如何获得选中的项目?
正如其他人所说,您应该使用布尔值作为CheckBox的第二个参数,以指示被检查的状态。一些字符串操作应该可以帮助您获得所选复选框的id。
首先让我们改变复选框帮助器的使用方式
<div id='myCheckboxDiv'>
@foreach (var item in Model.GetRoleNames)
{
@Html.CheckBox("chk_" + item.Value, false)@item.Text<br />
}
</div>
如您所见,我将第二个参数设置为false,并将mix包装在div
中。并且,当您想要获得与所选复选框相关联的"值"时
var values = $(‘# myCheckboxDiv’).find('input:checkbox:checked').map(function () {
// get the name ..
var nameOfSelectedItem = this.attr('name');
// skip the ‘chk_’ part and give me the rest
return nameOfSelectedItem.substr(4);
}).get();
我假设item。值为数字。如果不是,请使用c#