javascript - 如何在javascript中将数组复制到剪贴板
问题描述
我有这个简单的功能,我尝试将数组传递到剪贴板,以便稍后粘贴到 excel 中
hiddenInputOnCopyHandler = ev => {
ev.clipboardData.setData('text/plain', ev.currentTarget.value.split(','));
ev.preventDefault();
};
解决方案
根据文档,您应该触发copy
命令将选择复制到剪贴板。您还应该检查浏览器的兼容性。
也currentTarget.value
给出了 undefined 所以你应该使用它textContent
。
当您单击段落时,它会触发函数中的copy
命令copyAction
,然后eventListener
使用copy
事件执行该hiddenInputonCopyHandler
函数。
function init(){
let el = document.getElementById("CpToClip");
el.addEventListener('click',copyAction);
el.addEventListener('copy', hiddenInputOnCopyHandler);
}
function copyAction(){
document.execCommand('copy');
}
hiddenInputOnCopyHandler = ev => {
let copiedVal = ev.currentTarget.textContent.trim().split(',').join('\t');
console.log(copiedVal);// "HHHhhh" "mkjf" "Tendue" "Bonne" "10-07-2020" "khgkg@kjk.od"
ev.clipboardData.setData('text/plain', copiedVal);
ev.preventDefault();
}
addEventListener('load',init);
html
<p id="CpToClip">
HHHhhh,mkjf,Tendue,Bonne,10-07-2020,khgkg@kjk.od
</p>
检查我的解决方案并告诉我。
推荐阅读
- r - Shiny Plot Gapminder 不动
- r - 在闪亮的应用程序中返回绘图时返回无效的第一个参数错误
- c# - 您能否控制 Kafka 生产者何时向 Kafka 代理发送消息
- user-interface - 如何根据文本框值在 AvaloniaUI 中启用按钮
- java - 每次创建新的不同类的对象
- mysql - MySQL,SQL如何检索特定列中包含较少使用值的整行
- html - 即使我添加了 clear:right,我的文本中也有一张图片
- javascript - Google App Script:根据列中的值将行(仅在行中选定的列)移动到另一个选项卡
- reactjs - 连接用于材质 UI 卡属性的字符串
- tree - 无法在 cygwin 上安装树。密码问题