我想在我的actionlink中将我的下拉列表的值作为GET方法发送。 如何获取所选值并将其作为参数发送?
@Html.DropDownList(string.Format("User_{0}", item.UserID), ListProvider.GetRoles(roleId), new { })
@Html.ActionLink("Set", "UpdateRole", "Admin", new { userId = item.UserID, roleId = roleId }, null)
答案 0 :(得分:1)
您应该使用@Html.BeginForm
代替行动链接发出此类GET请求。
在这种情况下,表单将自动为您构建所有需要的参数。
使用
@using (Html.BeginForm("Set", "UpdateRole", new { area="Admin", userId = item.UserID, roleId = roleId }, FormMethod.Get))
{
@Html.DropDownList(string.Format("User_{0}", item.UserID), ListProvider.GetRoles(roleId), new { })
}
或
@using (Html.BeginForm("Set", "UpdateRole", new { area="Admin"}, FormMethod.Get))
{
@Html.Hidden("userId", item.UserID);
@Html.Hidden("roleId", roleId);
@Html.DropDownList(string.Format("User_{0}", item.UserID), ListProvider.GetRoles(roleId), new { })
}