ASP.NET MVC Multiple Checkboxes

后端 未结 3 1458
-上瘾入骨i
-上瘾入骨i 2020-12-29 13:22

I have a List of about 20 items I want to display to the user with a checkbox beside each one (a Available property on my ViewModel).

When

3条回答
  •  梦谈多话
    2020-12-29 14:09

    Model:

    public class MyViewModel
    {
        public int Id { get; set; }
        public bool Available { get; set; }
    }
    

    Controller:

    public class HomeController: Controller
    {
    
        public ActionResult Index()
        {
            var model = Enumerable.Range(1, 20).Select(x => new MyViewModel
            {
                Id = x
            });
            return View(model);
        }
    
        [HttpPost]
        public ActionResult Index(IEnumerable model)
        {
            ...
        }
    }
    

    View ~/Views/Home/Index.cshtml:

    @model IEnumerable
    @using (Html.BeginForm())
    {
        @Html.EditorForModel()
        
    }
    

    Editor template ~/Views/Home/EditorTemplates/MyViewModel.cshtml:

    @model AppName.Models.MyViewModel
    @Html.HiddenFor(x => x.Id)
    @Html.CheckBoxFor(x => x.Available)
    

提交回复
热议问题