1

我正在尝试在我的 MVC 应用程序中实现一个复选框列表。在这里,我需要将选定的复选框列表值传递给@html.ActionLink()。
我搜索了许多站点,包括 Stackoverflow,但没有数据库值的模型绑定,也没有获取选定的复选框值并传递给操作。
例如:https://stackoverflow.com/questions/4872192/checkboxlist-in-mvc3-0

我从这个链接尝试过。CheckBoxList 多项选择:如何建模绑定并获取所有选择?

如何从复选框列表中获取选定的 productid。任何例子.. ??

4

1 回答 1

3

看法:

@foreach (var item in Model.Tags)
{ <label>
      <input type="checkbox" name="tag" value="@item.TagID" @if (item.Selected) { <text>checked="checked"</text> } />@item.Name
  </label>
}

控制器:

    [HttpPost]
    public RedirectToRouteResult Edit(IEnumerable<Guid> tag)
    {
        using (var dc = new MyDataContext())
        {
            var existing = dc.Tag
                .Select(i => i.TagID)
                .ToList();

            // remove old
            foreach (var id in existing.Except(tags.EmptyIfNull()))
                dc.Tag.DeleteOnSubmit(dc.Tag.Single(k => k.TagID == id);

            // add new
            foreach (var id in tags.EmptyIfNull().Except(existing))
                dc.Tag.InsertOnSubmit(new Tag() { TagID = id, });

            dc.SubmitChanges();
        }

        return RedirectToAction("List");
    }
于 2012-11-01T15:02:03.957 回答