-1

我有一个编辑视图,其中有一些需要根据模型中的值填充的复选框。我想避免使用不同的 CheckBoxListFor 扩展,因为我相信有一种更简单的方法可以做到这一点。

我尝试使用 javascript 设置该值,但最后我检查了所有复选框,这是不行的。这是我尝试过的:

function SetAdminCheckBox() {
    var contains = @Model.RoleNames.Contains("Admin");
    var True = true;
    var result;

    result = contains ? 'checked' : '';

    return result;
}

<input type="checkbox" name="roleNames" value="Admin" checked="SetAdminCheckBox()"/>
4

2 回答 2

1

我找到了一种方法,使用一些剃刀语法:

<input type="checkbox" name="roleNames" value="Admin" @if (Model.RoleNames.Contains("Admin")) {<text>checked="checked"</text>} />
于 2013-08-09T08:13:15.710 回答
0

你不能像这样使用“checked”属性,checked 没有值,如果它存在,它要么存在要么不存在,否则复选框被选中,否则不

使用 if 编写两个版本,一个将输出选中的属性,另一个则不会。

于 2013-12-11T05:48:17.210 回答