循环遍历多个选择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(''); }); });