我有男性和女性选项的单选按钮,但问题是他们都选择而不是任何一个。如何防止在mvc中多次选择Razor控件单选按钮?
我的控制器:
private List<SelectedGenderModel> GetGender()
{
var gender = new List<SelectedGenderModel>();
gender.Add(new SelectedGenderModel { Name = "Male", Id = 1, Selected = false });
gender.Add(new SelectedGenderModel { Name = "Female", Id = 2, Selected = false });
return gender;
}
笔者认为:
@model MvcDemo.Models.EmployeeModel
@for (int i = 0; i < Model.Gender.Count; i++)
{
@Html.RadioButtonFor(m => m.Gender[i].Selected, new { id = "gender_" + i, name = "gendernm_" })
@Html.HiddenFor(m => m.Gender[i].Id)
@Html.HiddenFor(m => m.Gender[i].Name)
@Html.DisplayFor(m => m.Gender[i].Name)
}
我的视图模型:
public class EmployeeModel
{
public int Id { get; set; }
public string Fullname { get; set; }
public List<SelectedGenderModel> Gender { get; set; }
}
我的数据模型:
public partial class EmployeeMaster
{
public int Id { get; set; }
public string Fullname { get; set; }
public Nullable<bool> Gender { get; set; }
}
那么我如何防止单选按钮的多选?
在每个循环中,您只渲染一个单选按钮。他们在不同的群体!为什么你需要一个模型(而不是仅仅绑定到一个属性'字符串性别'与男性和女性2单选按钮)? – 2015-02-23 05:50:58
我将存储0和1的性别,我已经创建了性别模型,根据选定的单选按钮获取选定的性别 – CodeScanner 2015-02-23 05:53:30
然后包含一个属性'int Gender {get;组; }'并将2个单选按钮绑定到该属性(但为什么要使用'0'或'1'? - 使其成为字符串或枚举)。没有显示的代码是必要的。 – 2015-02-23 05:57:06