用多个select中的逗号分隔每个值
我有一个<select multiple='multiple'
,我需要在div或页面的其他部分显示所选的值。
我做了这个,但字符串都是一起刷的。 如何用逗号分隔每个值?
我用我到目前为止的实例做了一个实例 。
或者如果您愿意,这里是代码:
HTML:
Option 1 Option 2 Option 3 Option 4
JS:
$("#go").click(function(){ var selMulti = $("#selMulti option:selected").text(); $("#result").text(selMulti); });
如果选择选项1和2,结果将是:
Option 1Option 2
我需要的是:
Option 1, Option 2
谢谢
您需要将元素映射到数组,然后将它们连接起来:
$("#go").click(function(){ var selMulti = $.map($("#selMulti option:selected"), function (el, i) { return $(el).text(); }); $("#result").text(selMulti.join(", ")); });
工作演示: http : //jsfiddle.net/AcfUz/
$("#go").click(function(){ var textToAppend = ""; var selMulti = $("#selMulti option:selected").each(function(){ textToAppend += (textToAppend == "") ? "" : ","; textToAppend += $(this).text(); }); $("#result").html(textToAppend); });
一线风格:
$("#selMulti option:selected").map(function(){return this.text}).get().join(', ');
输出:
"Option 1, Option 2"