你如何传递ListBoxFor的所有内容?

时间:2011-06-17 17:24:05

标签: asp.net-mvc

我目前正在将IEnumerable集合绑定到ListBoxFor,它按预期工作,在POST上发送当前选定的值。但是,我需要发送所有值(基本上是给定ListBox中的任何值,我认为是必需的,无论是否选中)。我该怎么做呢?

(我可以在jQuery中进行操作,在提交时,它会手动选择框中的所有元素,但是想知道是否有更好的方法。)

1 个答案:

答案 0 :(得分:1)

如果你想在提交时继续使用普通的浏览器表单序列化,请在提交之前编写一个javascript函数(挂钩到onclick事件或其他东西),迭代列表框控件并连接所需的值(也许是逗号) -delimited)并将其放置在隐藏的字段中。隐藏字段的值将正常提交,您可以在服务器端解析其中的各个值。它仍然是一些手动工作,但你避免搞乱GUI状态(即选择所有想要的列表框项目),我同意这是你不想做的事情。