1.用户删除界面,有多个不同级别的用户组,以下拉列列呈现
2.提交删除时,先选择用户组,再选择下拉项指定用户。在选择不同的用户组时,其他用户组进行了隐藏。
3.采用asp-controller方式,通过model传入后台
问题:
传入到后台的,始终是第一组中的用户,要怎样传选中的那组用户呢?
ASP.NET CORE MVC有多个下拉列表,怎样传选中的那组到后台
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
关注 stevenjin 晚上好🌙🌙🌙
本答案参考通义千问在 ASP.NET Core MVC 中,如果你有一个包含多个下拉列表的表单,并且每个下拉列表的选择都需要一起传递到后台处理,你可以按照以下步骤来实现:
-
创建模型(Model): 首先,你需要创建一个模型类(
UserGroupModel
),该类包含多个属性对应你的下拉列表。例如:public class UserGroupModel { public int SelectedGroupId1 { get; set; } public string SelectedGroupName1 { get; set; } public int SelectedGroupId2 { get; set; } public string SelectedGroupName2 { get; set; } // 添加更多属性,按需扩展 }
-
视图(View): 在你的删除用户界面的视图中,使用
Html.DropDownListFor
控制器绑定来绑定下拉列表,同时添加@Html.HiddenFor
以隐藏每个组的 ID,这样可以在POST请求中一起发送。<form asp-action="DeleteUsers"> <!-- 下拉列表1 --> <div> <label for="groupId1">用户组1:</label> <select id="groupId1" asp-for="SelectedGroupId1"> @foreach (var group in Model.AvailableGroups1) { <option value="@group.Id" @(group.Id == Model.SelectedGroupId1 ? "selected" : "")>@group.Name</option> } </select> <input type="hidden" asp-for="SelectedGroupName1" value="@Model.SelectedGroupName1"> </div> <!-- 下拉列表2 --> <!-- ...重复类似结构... --> <!-- 提交按钮 --> <button type="submit">删除用户</button> </form>
其中
AvailableGroups1
是从服务层获取的用户组数据。 -
控制器(Controller): 在
DeleteUsers
方法中,接收UserGroupModel
类型的参数,然后根据选择的用户组ID执行删除操作。[HttpPost] public IActionResult DeleteUsers(UserGroupModel userGroupModel) { // 根据SelectedGroupId1、SelectedGroupId2等属性获取对应的用户组 var group1 = GetUsersFromGroupId(userGroupModel.SelectedGroupId1); var group2 = GetUsersFromGroupId(userGroupModel.SelectedGroupId2); // 删除选定的用户组中的所有用户 foreach (var user in group1.Concat(group2)) { // 执行删除逻辑 } // 返回结果或重定向 return RedirectToAction("Index", "Home"); } private List<User> GetUsersFromGroupId(int groupId) { // 从数据库或其他数据源获取用户,根据groupId筛选 }
通过这种方式,你就可以将多个下拉列表的选择一起发送到后台,并根据这些选择执行相应的操作了。记得在每个下拉列表的
asp-for
属性中使用不同的索引(如SelectedGroupId1
),以区分不同的用户组。本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报-
悬赏问题
- ¥30 win from 窗口最大最小化,控件放大缩小,闪烁问题
- ¥20 易康econgnition精度验证
- ¥15 msix packaging tool打包问题
- ¥28 微信小程序开发页面布局没问题,真机调试的时候页面布局就乱了
- ¥15 python的qt5界面
- ¥15 无线电能传输系统MATLAB仿真问题
- ¥50 如何用脚本实现输入法的热键设置
- ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
- ¥30 深度学习,前后端连接
- ¥15 孟德尔随机化结果不一致