Jquery - 获取多选列表的所有值

时间:2009-11-05 13:08:49

标签: jquery

我正在尝试使用JQuery来获取多选框中的所有值。我目前有一个选择列表的事情,在选择列表框中选择用户,然后添加到PickList框。我试图使用JQuery获得一个有点格式化的列表(格式化空格),所以我可以稍后解析该列表。我能够得到一个真正奇怪的字符串,没有通过这样做格式化

$.map($('#PickList'), function(e) { return $(e).text(); } );

但是在每个值之后没有使用空格“”格式化,并且字符串看起来像前面有大量的空格或其他内容。有人知道这样做的方法吗?感谢

4 个答案:

答案 0 :(得分:8)

我认为您只想获得所选选项中的值。

var selected = $.map( $('#PickList option:selected'),
                      function(e) { return $(e).val(); } );

答案 1 :(得分:6)

var selectedOptions = $.map($('#PickList :selected'),
       function(e) { return $(e).text(); } );
var str = selectedOptions.join(' ');

如果您想要所有选项,请将:selected替换为option

没有它,你只选择元素,所以它与$('#PickList').text()

相同

答案 2 :(得分:0)

This plugin可能对您有所帮助,它为大多数表单操作添加了流畅的帮助程序:

$("#PickList").selectedValues();

// Also available:
$("#PickList").isSelected("one", "two", "three");
$("#PickList").firstSelectedItem();
$("#PickList").lastSelectedItem();

答案 3 :(得分:-1)

试试这个

var multipleValues = $("#multiple").val() || [];