Javascript |将所选项目从列表框复制到文本区域
我知道这是个愚蠢的问题,但我对Javascript还是新手。 我有以下列表框:Javascript |将所选项目从列表框复制到文本区域,javascript,text,copy,Javascript,Text,Copy,我知道这是个愚蠢的问题,但我对Javascript还是新手。 我有以下列表框: <select id = 'data' multiple='multiple'> <option>test@email.com</option> <option>test@email.com</option> <option>test@email.com</option> <option>t
<select id = 'data' multiple='multiple'>
<option>test@email.com</option>
<option>test@email.com</option>
<option>test@email.com</option>
<option>test@email.com</option>
<option>test@email.com</option>
</select>
test@email.com
test@email.com
test@email.com
test@email.com
test@email.com
列表框下有一个文本区域:
<textarea id = 'copydata'>
</textarea>
文本区域下方有一个按钮:
<button id = 'add'>add email</button>
添加电子邮件
我想知道,当用户使用Javascript按下按钮时,是否可以将列表框中选择的项目复制到文本区域
请注意,listbox具有多个属性,因此用户可以选择多个项目
非常感谢您提供的任何帮助。是的,这是可能的,但您应该使用jQuery使其更简单:
$("#add").click(function(){ // This event fires when you click the add button
$("#data option:selected").each(function(){ // Loop through each selected option
$("#copydata").val($("#copydata").val() + $(this).text() + "\n"); // Add its innerhtml to the textarea
});
});
下面是使用核心HTML和Javascript的解决方案
函数copyDataToTextArea(){
var_data=document.getElementById(“数据”);
var_textArea=document.getElementById(“copydata”);
var _selectedData=“”;
对于(i=0;i谢谢你。它起作用了。还有一个问题:是否可以将每个项目添加到自己的行中?是的,只需更改$(“#copydata”)。将($(this.text());
附加到$(“#copydata”)。附加($(this.text()+“\n”)
你知道奇怪的是什么吗?如果我手动将文本添加到文本区域,然后尝试通过Javascript添加文本,那就行不通了。非常感谢!我真的很感激!