我有这个:
<tr>
<td>Label</td>
<td>@Html.Partial("MyPartial", Model)</td>
</tr>
在“MyPartial”中:
@if (Model.MyList.Count == 0){
Html.CheckBox("chk" + Model.MyList[0].Id);
}
else
{
Html.CheckBox("chk" + Model.MyList[0].Id); <br />
Html.CheckBox("chkCommon"); <br />
Html.CheckBox("chk" + Model.MyList[1].Id); <br />
}
我没有看到任何复选框,当我放入一些文字时,我看到了。
有什么想法吗?
谢谢,
答案 0 :(得分:2)
我认为你错过了Html.CheckBox()前面的@。
试试这个:
@Html.CheckBox("chk" + Model.MyList[0].Id); <br />
@Html.CheckBox("chkCommon"); <br />
@Html.CheckBox("chk" + Model.MyList[1].Id); <br />
顺便说一句,如果您的列表计数为0,那么if“true”语句中的代码块将会失败,因为您尝试引用列表中不存在的项目:
@if (Model.MyList.Count == 0){
@Html.CheckBox("chk" + Model.MyList[0].Id); // will throw an exception
}