我的表格带有我的复选框输入,用户可以编辑它。我可以将这些值保存在数据库中,但我不知道如何重新填充表单,因此用户可以对其进行编辑。
这是我的ViewBag var:
ViewBag.NewFriends = preferences.NewFriends;// this value is a boolean, false
我尝试预设这样的值:
@using (Html.BeginForm("SavePreferences", "Conta"))
{
@Html.HiddenFor(model => model.ID)
@Html.CheckBox("newFriends", new { @checked = @ViewBag.NewFriends })
@Html.Label("newFriends", "Solicitações de Amigo de Alma")
<p><input type="submit" value="Send" /></p>
}
由于HTML复选框的值为checked =“checked”,而不是true或false,因此不起作用。 @ Html.CheckBox将第一个参数作为输入名称,然后选中一个布尔值(true或false)。
我的问题是如何轻松设置此值?我试过了:
@Html.CheckBox("newFriends", ViewBag.NewFriends) // where ViewBag.NewFriends = false
但它根本不起作用......
有什么想法吗?
答案 0 :(得分:13)
可能扩展方法CheckBox
无法使用动态扩展方法。我尝试了以下示例,它可以工作:
@{ bool isNewFriends = ViewBag.NewFriends; }
@Html.CheckBox("newFriends", isNewFriends);