我正在尝试使用JQuery来获取多选框中的所有值。我目前有一个选择列表的事情,在选择列表框中选择用户,然后添加到PickList框。我试图使用JQuery获得一个有点格式化的列表(格式化空格),所以我可以稍后解析该列表。我能够得到一个真正奇怪的字符串,没有通过这样做格式化
$.map($('#PickList'), function(e) { return $(e).text(); } );
但是在每个值之后没有使用空格“”格式化,并且字符串看起来像前面有大量的空格或其他内容。有人知道这样做的方法吗?感谢
答案 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() || [];