正确使用.net MVC Html.CheckBoxFor

我只想知道Html.CheckBoxForASP.NET MVC中HTML帮助程序的正确语法。


我要完成的工作是使用ID值对复选框进行初始检查,因此我可以在Controller中对其进行引用,以查看是否仍处于选中状态。


下面是正确的语法吗?


@foreach (var item in Model.Templates) 

    <td> 

        @Html.CheckBoxFor(model => true, item.TemplateId) 

        @Html.LabelFor(model => item.TemplateName)

    </td> 

}


跃然一笑
浏览 1316回答 3
3回答

qq_笑_17

默认情况下,以下代码将不会生成选中的复选框,因为模型属性会覆盖html属性:@Html.CheckBoxFor(m => m.SomeBooleanProperty, new { @checked = "checked" });相反,在您的GET Action方法中,需要完成以下操作:model.SomeBooleanProperty = true;即使模型无效(即在发布表单时发生一些错误),以上内容也会保留您的选择(如果取消选中此框)。但是,以下代码肯定会生成一个选中的复选框,但不会保留您的未选中响应,而是使每次出现表单错误时都选中该复选框。&nbsp;@Html.CheckBox("SomeBooleanProperty", new { @checked = "checked" });UPDATE//Get Method&nbsp; &nbsp;public ActionResult CreateUser(int id)&nbsp; &nbsp;{&nbsp; &nbsp; &nbsp; &nbsp; model.SomeBooleanProperty = true;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp;}上面的代码将在启动时生成一个选中的复选框,并且即使在表单错误时也将保留您的选择。
打开App,查看更多内容
随时随地看视频慕课网APP