Ответ 1
Чтобы сделать это для нескольких элементов, сделайте что-то вроде:
foreach (var item in Model)
{
@Html.RadioButtonFor(m => m.item, "Yes") @:Yes
@Html.RadioButtonFor(m => m.item, "No") @:No
}
В частичном представлении Я работаю с такими текстовыми полями.
@model Dictionary<string, string>
@Html.TextBox("XYZ", @Model["XYZ"])
Как я могу генерировать радиокнопки и получать желаемое значение в виде коллекции как ДА/НЕТ True/False)? В настоящее время я получаю null для "ABC", если я выбираю любое значение для ниже.
<label>@Html.RadioButton("ABC", @Model["ABC"])Yes</label>
<label>@Html.RadioButton("ABC", @Model["ABC"])No</label>
контроллер
public int Create(int Id, Dictionary<string, string> formValues)
{
//Something Something
}
Чтобы сделать это для нескольких элементов, сделайте что-то вроде:
foreach (var item in Model)
{
@Html.RadioButtonFor(m => m.item, "Yes") @:Yes
@Html.RadioButtonFor(m => m.item, "No") @:No
}
Просто:
<label>@Html.RadioButton("ABC", True)Yes</label>
<label>@Html.RadioButton("ABC", False)No</label>
Но вы всегда должны использовать сильно типизированную модель, как предложено cacho.
Я решаю ту же проблему с этим Ответ SO.
В основном он привязывает переключатель к логическому свойству сильно типизированной модели.
@Html.RadioButton("blah", !Model.blah) Yes
@Html.RadioButton("blah", Model.blah) No
Надеюсь, что это поможет!
Я сделал это так:
@Html.RadioButtonFor(model => model.Gender, "M", false)@Html.Label("Male")
@Html.RadioButtonFor(model => model.Gender, "F", false)@Html.Label("Female")
<label>@Html.RadioButton("ABC", "YES")Yes</label>
<label>@Html.RadioButton("ABC", "NO")No</label>
Это работает для меня.
@{ var dic = new Dictionary<string, string>() { { "checked", "" } }; }
@Html.RadioButtonFor(_ => _.BoolProperty, true, (@Model.BoolProperty)? dic: null) Yes
@Html.RadioButtonFor(_ => _.BoolProperty, false, ([email protected])? dic: null) No
<p>@Html.RadioButtonFor(x => x.type, "Item1")Item1</p>
<p>@Html.RadioButtonFor(x => x.type, "Item2")Item2</p>
<p>@Html.RadioButtonFor(x => x.type, "Item3")Item3</p>
<div class="col-md-10">
Male: @Html.RadioButton("Gender", "Male")
Female: @Html.RadioButton("Gender", "Female")
</div>