使用JQuery将ListBox选择的值作为隐藏字段发送

时间:2010-10-18 07:11:00

标签: javascript jquery html json servlets

我希望能够使用JQuery将列表框中的所有选定值作为隐藏字段发送。 我能够在表单提交上发送/检索单个值。

如果有人可以分享一些代码段,那会有所帮助。

提前致谢!

2 个答案:

答案 0 :(得分:3)

嗯,你真正要求的并不是那么清楚。 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();

这将创建一个包含所有选定部分文本的数组。

答案 1 :(得分:1)

绝对没有必要这样做。您显然使用request.getParameter()而不是request.getParameterValues(),并想知道为什么它只返回第一个值。

只需相应地修复您的servlet代码:

String[] selectedItems = request.getParameterValues("dropdownname");

不需要丑陋的JS / jQuery黑客将它们全部作为单个参数发送。在未来的问题中,尝试询问如何解决问题,而不是如何实现解决方案,而这可能毕竟不是正确的解决方案。