Как создать динамический список в Aspnet mvc4 с помощью RadioButton?

#c# #asp-net-mvc-1

#c# #asp-net-mvc-1

Вопрос:

Моя модель:

 namespace MvcApplication5.Models
{
    public class DepartmentModelClass
    {
        public int Id { get; set; }
        public string Text1 { get; set; }
        public string Text2 { get; set; }
        public bool? Option1 { get; set; }
        public bool Option2 { get; set; }
    }
}
  

Мой контроллер:

  public ActionResult Index()
        {
            List<DepartmentModelClass> list = new List<DepartmentModelClass>();
            list.Add(new DepartmentModelClass { Id = 1, Text1 = "test1", Text2 = "test2", Option1 = false, Option2 = false });
            list.Add(new DepartmentModelClass { Id = 2, Text1 = "test3", Text2 = "test4", Option1 = false, Option2 = false });
            list.Add(new DepartmentModelClass { Id = 3, Text1 = "test5", Text2 = "test6", Option1 = false, Option2 = false });

            return View(list);
        }
  

Мое мнение:

 @model IEnumerable<MvcApplication5.Models.DepartmentModelClass>

@{
    Layout = null;
}

@using (Html.BeginForm("Index", "Employee", FormMethod.Post, new { id = "idForm" })) {
    int i = 0;
    foreach (var item in Model) {
            <div class="row">
                <div class="form-group">
                    <span>@i:</span>
                    <input type="text" id="idtext1" value=@item.Text1 name="[@i].Text1" />
                    <input type="text" id="idtext2" value=@item.Text2 name="[@i].Text2" />
                    <hr />
                </div>
            </div>
        i  = 1;
    }

    <input type="submit" value="Submit" />
}
  

Мой экран:

введите описание изображения здесь

Моя отладка:

введите описание изображения здесь

Но я хотел бы сделать то же самое с помощью RadioButtton:

 <input type="radio" id="radio3" value="@item.Option1" name="[@i].Option1 == checked ? true : false" />
  

Я хочу установить значение TRUE или FALSE в соответствии с моим элементом списка.

Вы можете мне помочь? Спасибо!

Ответ №1:

Не могли бы вы подробнее рассказать.

Ниже приведен код, если вы хотите отобразить переключатель на основе значения option1.

 @using (Html.BeginForm("Index", "Home", FormMethod.Post, new { id = "idForm" }))
    {
        int i = 0;
        foreach (var item in Model)
        {
            <div class="row">
                <div class="form-group">
                    <span>@i:</span>
                    @if (item.Option1 == true)
                    {
                        <input type="radio" id="radio_@i" value="@item.Option1" name="radio_@i" checked="checked" />
                        <input type="text" id="idtext1" value=@item.Text1 name="[@i].Text1" />
                        <input type="text" id="idtext2" value=@item.Text2 name="[@i].Text2" />
                    }
                    else
                    {
                        <input type="radio" id="radio_@i" value="@item.Option1" name="radio_@i" />
                        <input type="text" id="idtext1" value=@item.Text1 name="[@i].Text1" disabled="disabled" />
                        <input type="text" id="idtext2" value=@item.Text2 name="[@i].Text2" disabled="disabled" />
                    }


                    <hr />
                </div>
            </div>
            i  = 1;
        }

        <input type="submit" value="Submit" />
    }
  

Комментарии:

1. Я хотел бы установить динамическое значение bool в списке. Я пытаюсь создать динамическую форму. : D