繁体   English   中英

用多个select中的逗号分隔每个值

[英]separate each value with comma from multiple select

我有一个<select multiple='multiple' ,我需要在div或页面的其他部分显示所选的值。

我做了这个,但字符串都是一起刷的。 如何用逗号分隔每个值?

我用我到目前为止的实例做了一个实例

或者如果您愿意,这里是代码:

HTML:

<select multiple='multiple' id="selMulti">
     <option value="1">Option 1</option>
     <option value="2">Option 2</option>
     <option value="3">Option 3</option>
     <option value="4">Option 4</option>    
</select>
<input type="button" id="go" value="Go!" />
<div style="margin-top: 10px;" id="result"></div>

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"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM