ASP.NET MVC动态添加复选框

时间:2011-03-25 13:27:27

标签: asp.net-mvc asp.net-mvc-3

我有这个:

<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 />
}

我没有看到任何复选框,当我放入一些文字时,我看到了。

有什么想法吗?

谢谢,

1 个答案:

答案 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

}