Мне нужно иметь несколько групп переключателей в моей форме, например:
Я знаю, что это просто делается путем указания одного и того же html-атрибута "name" для каждой группы.
ОДНАКО
MVC не позволяет указать собственный атрибут name. при использовании помощника html следующим образом:
@Html.RadioButtonFor(i => item.id, item.SelectedID, new { Name = item.OptServiceCatId })
Поскольку он просматривает атрибут "name" каждого тега (а не "id"), чтобы сопоставить/связать форму с моделью, которую получает контроллер. , и т.д.
Некоторые говорили, что указание каждого с одинаковым атрибутом «GroupName» решит проблему, но это тоже не сработало.
Итак, есть ли способ, который работает?
EDIT:
Вот мое мнение (упрощенное):
@model Service_Provider.ViewModels.SelectOptServicesForSubServiceViewModel
@foreach (var cat in Model.OptServices)
{
//A piece of code & html here
@foreach (var item in cat.OptItems.Where(i => i.MultiSelect == false))
{
@Html.RadioButtonFor(i => item.id, item.SelectedID, new { GroupName = item.OptServiceCatId })
<br />
}
}
ПРИМЕЧАНИЕ.
Моя модель List<OptServices>
:
public List<OptServices> Cats {get; set;}
А внутри OptServices есть List
из OptItems
:
public class OptServices
{
//a few things
public List<OptItems> Items {get; set;}
}