我很难确定在我的MVC项目中检查了哪些复选框。以下是我设置复选框的方法:
<div id='myCheckboxDiv'>
<input type="checkbox" onclick="checkAll(this)">Check All
@foreach (var form in @Model.DetailObject.DoaFormGroupDocuments)
{
<br>
var checkBoxId = "chk" + form.DocumentId;
@Html.CheckBox(checkBoxId, new { value = form.DocumentId, @checked = true });
@form.DocumentName;
}
</div>
基本上我加载一个页面,该页面将在DetailObject中显示每个DoaFormGroupDocument的复选框(可以是0-10之间的任何位置)。我想要做的是当我点击页面底部的保存按钮时,与每个复选框相关联的ID(每个复选框都是唯一的)将保存到列表中。
要说清楚,我真的不希望在这个页面上发生任何事情,我需要存储在列表中的ID,我可以在其他区域(页面)中使用,所以我想这意味着我需要要在控制器中确定的复选框状态。
答案 0 :(得分:0)
您可以在操作方法中查看来自Request
的已发送数据,如果已选中,则可以check
查看已发送的数据(选中CheckBoxes
作为值发送)
var list = new List<bool>();
foreach (var form in DetailObject.DoaFormGroupDocuments)
{
var checkBoxId = "chk" + form.DocumentId;
if (Request[checkBoxId] == "on")
list.Add(true);
else
list.Add(false);
}
列表是您的CheckBoxes
状态。保存,如你所愿。