我的razor cshtml页面上有多个单选按钮组。我需要将名称指定为变量,因为每个组都需要拥有自己独特的单选按钮选项。基本上我有下面的东西是行不通的。也就是说,workshopDay似乎没有被解释为变量。
@foreach (var workshopDay in new List<string> {"Wednesday", "Thursday"})
...
@Html.RadioButtonFor(a => a.AngularUsignup.AttendeeParty,
new { @class = "radio",@name="@(workshopDay)" })
答案 0 :(得分:0)
尝试以下。
@foreach (var workshopDay in new List<string> {"Wednesday", "Thursday"})
...
@Html.RadioButtonFor(a => a.AngularUsignup.AttendeeParty,
new { @class = "radio",@name=workshopDay.ToString() })
注意:正如斯蒂芬在评论中提到的那样,它将允许选择所有单选按钮。相反,你应该在这种情况下使用复选框。
答案 1 :(得分:0)
这是其中一个问题:
要覆盖name属性(或HtmlHelper为您添加的其他属性之一),您需要使用带有首字母大写字母的属性名称(所以:“ N ame”而不是“ n ame”):
@Html.RadioButtonFor(a => a.SomeProperty, new { Name="yourValuehere" })
所以,我认为你的例子是:
@Html.RadioButtonFor(a => a.AngularUsignup.AttendeeParty,
new { @class = "radio",@Name="@(workshopDay)" })
HTH