我试图通过在html帮助中提供额外的html属性来在循环内对一组单选按钮进行分组,如下所示 -
<ol class="Opt">
@foreach (var opt in quest.Options)
{
<li class="Opt">
@Html.RadioButtonFor(o => opt.Title, opt.Title, new { @name = "uniqueRadio"})
@Html.Label(opt.Title)
</li>
}
</ol>
然而,由于显而易见的原因,名称属性ot生成的输入html标记被 opt.Title 覆盖。在发布数据时,MVC-4使用名称属性进行强类型模型绑定。
如何将单选按钮组合在一起?
编辑:我用RadioButton替换了RadioButtonFor,如下所示。但这样我就错过了模型绑定功能。<ol class="Question">
@for (int j = 0; j < Model.Options.Count; j++)
{
<li class="Opt">
@Html.RadioButton("uniqueRadio", Model.Options[j].IsSelected, false)
@Model.Options[j].Title
</li>
}
</ol>
答案 0 :(得分:4)
使用简单的RadioButton
<ol class="Opt">
@foreach (var opt in quest.Options)
{
<li class="Opt">
@Html.RadioButton("uniqueRadio", opt.Title)
@Html.Label(opt.Title)
</li>
}
</ol