循环遍历多个选择comboboxJQuery中的选定值

我有以下情况。

我有一个combobox,可以选择多种选择。

 aaaa bbbb cccc dddd  

现在我也有一个按钮

  

当用户单击此按钮时,它应列出警告框中下拉列表的所有选定值

我的JS代码如下所示

  $(document).ready(function() { $('#display').click(function(){ alert($('#a').val()); }); }); 

任何指针将不胜感激

您必须找到所有选定的选项:

 jQuery(function($) { $('#display').click(function() { $('#a > :selected').each(function() { alert($(this).text()); // using text() here, because the }); // options have no value..? }); }); 

正如Pim指出的那样,手册非常有用:

.val()方法主要用于获取表单元素的值。 在元素的情况下, .val()方法返回包含每个所选选项的数组。

所以,上面应该可以工作,但jQuery已经为你做了幕后操作,所以这更容易:

 alert($('#a').val().join(", ")); 

如果它不适合您,可能是因为您的选项似乎没有价值。

记录.val()函数的jQuery页面告诉你该怎么做: http ://api.jquery.com/val/

你试过每个()吗?

在下面的演示箱上,我已经完成了上述问题。

演示: http //codebins.com/bin/4ldqp9w

HTML:

  

CSS:

 #a{ display:inline-block; } #result{ display:inline-block; } 

JQuery的:

 $(document).ready(function() { $('#display').click(function() { var result = ''; $('#a > :selected').each(function() { result += "
" + $(this).text() + "
"; }); if (result == "") { result = "
Please select any option(s)..!
"; } $("#result").html(result); }); $('#reset').click(function() { $('#a > :selected').each(function() { $(this).removeAttr('selected'); }); $("#result").html(''); }); });