您好我有一些代码:
foreach (var item in Model) {
<div>
@Html.DisplayFor(modelItem => item.UserRole.Role.Name)
</div>
<div>
<input type="checkbox" name="ids" checked="@item.Active" />
</div>
}
我想要实现的是设置复选框检查项目是否为活动否则未选中。
我理解语法应为checked="checked"
,我将其设置为checked="true"
我不明白如何将true转换为checked以及如何将false转换为。
我试图使用三元组但它不会很好玩。有人可以帮忙吗?
答案 0 :(得分:2)
checked属性的存在将导致它被检查,即属性的值与(AFAIK)无关。因此,您需要检测是否要添加checked属性:
foreach (var item in Model)
{
<div>
@Html.DisplayFor(modelItem => item.UserRole.Role.Name)
</div>
<div>
<input type="checkbox" name="ids" @if (item.Active) { Write("checked"); }/>
</div>
}
编辑:更改为MДΓΓБДLL版本,更清洁。
一种蛮力逼近= P
答案 1 :(得分:1)
我理解语法应为
checked="checked"
如果您使用的是XHTML,那是真的。在HTML中,您只需指定该属性的值的简写语法is recommended(尽管用户代理在这些日子里没有长问题,但输入的速度更快)。
<input type="checkbox" name="foo" value="bar" checked>
我不明白如何将true转换为已检查的
这取决于您使用的(未指定的)模板语言。
以及如何做假。
根本不要包含checked属性。
<input type="checkbox" name="foo" value="bar">
答案 2 :(得分:1)
在HTML中,要取消选中它,只需删除checked =“whatever”属性即可。从技术上讲,HTML并不关心checked =“”的值是什么,只是它存在并且它是有效的标记。