我不知道js。我需要将多项选择作为与选择框分隔的逗号分隔到文本输入中。
使用pure js,我发现只有这个问题与SO相关。 Multiple selections into input box
然后我尝试了那个问题中的js代码。 (问题 js 结合接受的答案)
但是我无法实现。
例如,我需要在选择这 2 个并提交后将 Australia,England 打印到文本输入中。
fiddle 链接是:
FIDDLE 中的代码
HTML
<form>
<select id="countries" multiple>
<option value="val0">Australia</option>
<option value="val1">England</option>
<option value="val2">France</option>
</select>
<input type="button" value="Show Index" onclick="showSelected();" />
</form>
<p>selected countries by comma seperated</p>
<form><input type="text" id="txtText" /></form>
不成功的 JS
function showSelected()
{
var selObj = document.getElementById('countries');
var txtTextObj = document.getElementById('txtText');
var selIndex = selObj.selectedIndex;
txtTextObj.value += selObj.options[selIndex].text +', ';
}
最佳答案
你可以这样做:
var selObj = document.getElementById('countries'),
txtTextObj = document.getElementById('txtText'),
selected = [];
for(var i = 0, l = selObj.options.length; i < l; i++){
//Check if the option is selected
if(selObj.options[i].selected){
selected.push(selObj.options[i].textContent);
}
}
txtTextObj.value = selected.join(', ');
jsFiddle
关于javascript - 将多项选择作为与选择框分隔的逗号分隔到文本输入中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28069061/