多个MVC DropDownLists - 分别提交每个表单

时间:2011-06-23 22:35:42

标签: jquery asp.net-mvc asp.net-mvc-3

我有一个包含多个DropDownLists的MVC页面。每个用户一个显示在屏幕上。

当用户更改任何下拉列表时,我需要做的是在控制器上调用操作。此调用需要将下拉列表对应的用户以及所选项目的值传递给控制器​​。

我知道如何使用jQuery执行此操作,但不太确定如何动态地为每个DropDown设置jQuery处理程序。

有什么想法吗?

示例代码:

查看:

@foreach (var user in Model.Users)
    {  
        <tr>
            <td>
                    @user.Name
            </td>
            <td>
                @using (Html.BeginForm())
                {
                    @Html.DropDownList(@user.Name + "-dd", @Model.UserGroups, "Add to group...")
                }
            </td>
        </tr>
    }

控制器:

public ActionResult AddToGroup(string user,string selectedValue){....}

1 个答案:

答案 0 :(得分:1)

将CSS类用于下拉列表

@Html.DropDownList(@user.Name + "-dd", @Model.UserGroups, "Add to group...", new { @class = "user-drop-down" })

然后使用JQuery选择器

$('.user-drop-down').change(....)  

将您的逻辑放在那里,以便将数据发布到您的MVC操作中。有关如何实现javascript方法的更多信息,请参阅JQuery API:http://api.jquery.com/change/