如何在 MVC 5 中首次加载页面时检查@Html.RadioButtonFor 的列表项,
How to make listitem checked for @Html.RadioButtonFor when page loads firstly in MVC 5,
我的部门 table 有 DeptId、DeptName 和 IsSelected 列。
我有两条记录,其中一条记录 isselected 为假,另一条记录 isselected 为真。所以现在当 Isselected 为真时,在 MVC5 中第一次加载页面时应该检查相应记录的值。我有下面的代码,我该如何修改它来实现这个要求。
@model RadioButtonForApp_MVC.Models.Employee
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
@using (Html.BeginForm("Index", "Employee", FormMethod.Post))
{
foreach (var department in Model.Departments)
{
@Html.RadioButtonFor(p => p.SelectedDepartments, department.DepartmentName)@department.DepartmentName
}
<br />
<input type="submit" value="Submit" />
}
此主题在此处被广泛描述:Correct way to bind an mvc3 radiobutton to a model。
但是如果你想快速解决,你应该使用this overload of RadioButtonFor,最后一个参数是"htmlAttributes"。您可以在那里传递 "checked" 属性,因此您的代码将如下所示:
foreach (var department in Model.Departments)
{
var checked = departament.IsSelected ? new {checked="checked"} : new {};
@Html.RadioButtonFor(p => p.SelectedDepartments, department.DepartmentName,departament.DepartamentName,checked)@department.DepartmentName
}
我的部门 table 有 DeptId、DeptName 和 IsSelected 列。
我有两条记录,其中一条记录 isselected 为假,另一条记录 isselected 为真。所以现在当 Isselected 为真时,在 MVC5 中第一次加载页面时应该检查相应记录的值。我有下面的代码,我该如何修改它来实现这个要求。
@model RadioButtonForApp_MVC.Models.Employee
@{
ViewBag.Title = "Index";
}
<h2>Index</h2>
@using (Html.BeginForm("Index", "Employee", FormMethod.Post))
{
foreach (var department in Model.Departments)
{
@Html.RadioButtonFor(p => p.SelectedDepartments, department.DepartmentName)@department.DepartmentName
}
<br />
<input type="submit" value="Submit" />
}
此主题在此处被广泛描述:Correct way to bind an mvc3 radiobutton to a model。
但是如果你想快速解决,你应该使用this overload of RadioButtonFor,最后一个参数是"htmlAttributes"。您可以在那里传递 "checked" 属性,因此您的代码将如下所示:
foreach (var department in Model.Departments)
{
var checked = departament.IsSelected ? new {checked="checked"} : new {};
@Html.RadioButtonFor(p => p.SelectedDepartments, department.DepartmentName,departament.DepartamentName,checked)@department.DepartmentName
}