如何使用asp.net MVC中的复选框获取所选行

时间:2009-11-11 07:04:12

标签: asp.net-mvc checkbox

我的MVC应用程序中存在与html.checkbox相关的问题。

我的情景是:

我有一个列表(索引视图)页面,其中我使用复选框绑定数据库中的数据以选择/取消选择该项目。当我单击保存按钮时,我想获取选定的行以将这些项目保存回db。

我用过

1.  <input type="checkbox" id="chk2" value="<%= item.recid %>" >  
    // I'm not getting value of chk2 in serverside 

2. <%= html.CheckBox("chk1")%>
    // i'm getting chk1 in serverside with value like 'true,false,true,false...'

在我的模型视图迭代中。

那么如何在MVC应用程序中做到这一点?

2 个答案:

答案 0 :(得分:6)

我就是这样做的......

视图中,为所有复选框指定相同的名称和唯一的

<input type="checkbox" name="MyCheckboxes" value="<%= item.recid %>" > 

controller 操作方法中,传递一个带有复选框名称的IList。

public ActionResult MyActionMethod(IList<string> MyCheckboxes)
{
...
}

您将在MyCheckboxes中收到仅选中的复选框的列表。

答案 1 :(得分:1)

对于1),您需要在input元素上指定一个名称。

然后,您需要将该名称与Action Method上的参数匹配。