其中lb是一个列表框,txtfield是一个文本框,下面的代码获取选项的所有值,将它们放入一个数组中,并将其放入一个逗号分隔的列表中:
var arr = [];
for (var i = 0; i < lb.length; i++) {
arr[i] = lb.options[i].value;
}
txtfield.value = arr.join(',');lb.options.toString()显然不起作用,因为它是一个选项数组(值和文本)。我没有找到比这更简洁的东西了。
jQuery有什么方法可以做到这一点?我试着摆弄$(lb).each(),但似乎不能让它以同样的方式工作。
发布于 2015-10-14 22:39:31
请在此处查看演示:
您可以使用分隔符获取多个选定的选项文本值。
$('#testID').change(function () {
var test=$(this).find("option:selected").map(function () {
return $(this).text();
}).get().join('//');
alert(test);
});<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select id="testID" multiple="multiple">
<option value="1">test Value1</option>
<option value="2">test Value2</option>
<option value="3">test Value3</option>
<option value="4">test Value4</option>
<option value="5">test Value5</option>
<option value="6">test Value6</option>
</select>
<input type="button" value="Get dropdown selected Value" id="select-values">
<div id="result"></div>
https://stackoverflow.com/questions/4199826
复制相似问题