【发布时间】:2010-10-18 07:10:59
【问题描述】:
我希望能够使用 JQuery 将列表框中的所有选定值作为隐藏字段发送。 我能够在表单提交时发送/检索单个值。
如果有人可以分享一些代码 sn-p,那将有所帮助。
提前致谢!
【问题讨论】:
-
能否提供一些示例代码。使用jsfiddle.net 显示示例代码
标签: javascript jquery html json servlets
我希望能够使用 JQuery 将列表框中的所有选定值作为隐藏字段发送。 我能够在表单提交时发送/检索单个值。
如果有人可以分享一些代码 sn-p,那将有所帮助。
提前致谢!
【问题讨论】:
标签: javascript jquery html json servlets
嗯,你真正想要的是什么还不是很清楚。 HTML 中没有“多选下拉列表”。要进行多选,您需要指定
<select id="foobar" multiple>
这将创建一个listbox,您可以在其中选择多个元素。调用
var sel = $('#foobar').val();
将返回选定项目的Array。
编辑
要从每个选项中获取文本,请使用 .map() 或 jQuery.map()。示例:
var sel = $('#foobar').children('option:selected').map(function(i,e){
return e.innerText;
}).get();
这将创建一个包含所有选定条目的文本的数组。
【讨论】:
完全没有必要这样做。您显然在使用 request.getParameter() 而不是 request.getParameterValues() 并且想知道为什么它只返回第一个值。
只需相应地修复您的 servlet 代码:
String[] selectedItems = request.getParameterValues("dropdownname");
不需要丑陋的 JS/jQuery hack 将它们全部作为单个参数发送。在未来的问题中,尝试询问如何解决问题,而不是如何获得可能本身并不正确的解决方案。
【讨论】: