【发布时间】:2009-08-10 12:26:57
【问题描述】:
有没有办法将 SelectList(多选)中的所有项目发布到控制器的方法中?默认情况下,当我使用 SelectList 时,它只会将所选项目发布到表单。
我在视图上有几个 MultiSelect 控件。使用 jQuery,用户可以将项目从 ListBox1 移动到 ListBox2,反之亦然。当表单发布时,我希望能够确定所有出现在 ListBox1 中的项目。但是,当我在控制器中评估 Form["ListBox1"] 时,它只会为我提供一个逗号分隔的 SELECTED 值列表 - 但我想要 ListBox1 中的所有项目。不仅仅是选定的。
如何让视图发布 ListBox1 中的所有项目,而不仅仅是选定的项目?
【问题讨论】:
-
所有答案都假设您的客户启用了 js。在使用仅启用 js 的解决方案之前,请注意这一点并了解您的用户群
-
如果客户端没有启用js,他们将无法将项目从一个列表框移动到另一个!
-
为什么,你可以使用普通的 post 请求来实现这个!!
-
应该使用 JQuery 来增强体验。不驱动它 100%
-
感谢 cmets tsk 和 redsquare。如果我想允许用户在没有回发的情况下在客户端的列表框之间移动项目,那么我必须做出让 jQuery 驱动体验 100% 的不幸选择。我希望有另一种方式,因为我确实赞同 jQuery 应该只增强体验的概念。在这种情况下,我将破例。
标签: jquery asp.net-mvc controller selectlist