根据条件将复选框设置为在视图中选中

set checkboxes to checked in view depending on condition

我有对象列表

        AAA.aListofObjects= (from tdrc in db.objectsDB
                                      where tdrc.objectID == id
                           select tdrc).ToList();

一个参数AAA.aListofObjects.check - 保存真或假数据。

内部视图我使用 "for" 呈现我的列表,其中我有 "If" 语句来决定是否选中复选框

            @for (int i = 0; i < Model.aListofObjects.Count; i++)
    {
if(something equals something then I must render checkbox as checked)
{
 @Html.CheckBoxFor(modelItem => modelItem.aListofObjects[i].check)
}
else 
{
render unchecked checkbox
 @Html.CheckBoxFor(modelItem => modelItem.aListofObjects[i].check)
}

    }

现在我怎样才能让他们在这种情况下被检查? @Html.CheckBoxFor(modelItem => modelItem.aListofObjects[i].check, @checked="checked") 没有帮助。

一些 aListofObjects[i].check 是 "true",当我检查 html 调试器时,我看到该复选框具有 value="true" 状态,但它仍未选中。为什么?

在选中复选框的真实情况下,您可以设置以下代码:

@Html.CheckBoxFor(modelItem => modelItem.aListofObjects[i].check, new { @checked = "checked" })

如果其他条件保持复选框未选中,您可以设置以下代码:

@Html.CheckBoxFor(modelItem => modelItem.aListofObjects[i].check)

您可以在此处获取有关 @HTML.CheckboxFor 的更多详细信息:Proper usage of .net MVC Html.CheckBoxForenter link description here