Javascript 如何在没有插件等的情况下将数据从select复制到剪贴板。?

Javascript 如何在没有插件等的情况下将数据从select复制到剪贴板。?,javascript,select,drop-down-menu,clipboard,copy-paste,Javascript,Select,Drop Down Menu,Clipboard,Copy Paste,因此,问题是: 是否可以从select元素复制数据而无需附加插件(jQuery可以,但没有其他功能),如: 主要问题是: var copyTextarea = document.querySelector('.js-copytextarea'); copyTextarea.select(); 如果我们使用textarea,一切正常,但对于选择它不适用。我无法选择select元素中的数据 有什么想法吗,伙计们 用例:我想为选择带有值列表的元素,复制这些值,粘贴到textarea或另一个元素的o

因此,问题是:

是否可以从
select
元素复制数据而无需附加插件(jQuery可以,但没有其他功能),如:

主要问题是:

var copyTextarea = document.querySelector('.js-copytextarea');
copyTextarea.select();
如果我们使用
textarea
,一切正常,但对于
选择它不适用。我无法选择
select
元素中的数据

有什么想法吗,伙计们


用例:我想为
选择带有值列表的
元素,复制这些值,粘贴到
textarea
或另一个元素的
onchange
事件上设置一个函数,这无关紧要检查:此函数创建一个临时
textarea
以执行剪贴板复制

功能copyToClipboard(文本){
var textarea=$('');
text区域.val(text).css({
宽度:“0px”,
高度:“0px”,
边界:“无”,
可见性:“无”
}).附于(“主体”);
textarea.focus().select();
试一试{
if(document.execCommand('copy')){
textarea.remove();
返回true;
}
}捕获(e){
控制台日志(e);
}
textarea.remove();
返回false;
}
$(“选择”)。在(“更改”,函数()上{
如果(!copyToClipboard($(this.val()))
console.log(“复制失败”);//执行某些操作
});

挑选
模仿我!

为什么不
doment.getElementById(“sel1”).onchange=function(){this.form.textarea1.value=this.value}
这不太容易。我需要将此数据插入用户将单击的位置。例如,我们在
textarea
中有一些文本:
你好,今天真是令人惊奇的一天
,在
select
中选择的值是
world,
。用户在
textarea
中的逗号后单击,新值是:
你好,world,这是令人惊奇的一天。类似这样的事情为什么你需要剪贴板将值放入另一个元素?@epascarello,阅读上面的我的评论,你似乎需要检测单击的位置并简单地插入所选的值。没有剪贴板也可以使用范围-它可以像我预期的那样工作,但我会等待一些其他的解决方案,也许没有额外的临时元素,它对你有效,但我认为不可能有其他方式,通常是允许你复制到剪贴板的插件,使用Flash,这比创建临时文本区更糟糕,我完全同意Flash我会接受你的回答,因为它确实像我在问题中所描述的那样有效,但对于我的主要想法的一般解决方案:
点击
textarea
我使用的范围(不需要复制到剪贴板等)后,按位置将所选值从
select`element插入
textarea
谢谢,我提供了你所要求的;)。无论如何,若你们在将文本插入文本区域的特定位置时仍然有问题,请提出一个新问题并告诉我,这样我可以帮你们;)