Javascript 用按钮将每个td单元格文本复制到剪贴板

Javascript 用按钮将每个td单元格文本复制到剪贴板,javascript,jquery,Javascript,Jquery,我试图为表中的每个td文本设置一个按钮,将内容复制到剪贴板 我想使用jquery的this关键字选择每个文本的节点内容。当我传入jQuery对象时,它将抛出一个错误 当我传递一个唯一的ID时,它正在工作,但当我传递一个jQuery对象时,它就不工作了。我如何才能有效地实现这一点 $(文档).ready(函数(){ $(“输入[数据目标]”)。在(“单击”,函数()上){ var docSelector=document.createRange(); var get_text=$(这个); 日志

我试图为表中的每个td文本设置一个按钮,将内容复制到剪贴板

我想使用jquery的this关键字选择每个文本的节点内容。当我传入jQuery对象时,它将抛出一个错误

当我传递一个唯一的ID时,它正在工作,但当我传递一个jQuery对象时,它就不工作了。我如何才能有效地实现这一点

$(文档).ready(函数(){
$(“输入[数据目标]”)。在(“单击”,函数()上){
var docSelector=document.createRange();
var get_text=$(这个);
日志(获取文本);
log(docSelector.selectNodeContents(获取文本));
var selection=window.getSelection();
selection.removeAllRanges();
selection.addRange(docSelector);
文件。执行命令(“副本”);
selection.removeAllRanges();
});   
});
表,th,td{
边框:1px实心#000;
}

复制
正文
复制一些文本
再复制一些文本
复制更多的文本

您需要获取相邻单元格的文本:

var get_text = $(this).closest('td').next()[0];
片段:

$('input[data target]')。在(“click”,function()上{
var docSelector=document.createRange();
var get_text=$(this).closest('td').next()[0];
日志(获取文本);
var selection=window.getSelection();
selection.removeAllRanges();
selection.addRange(docSelector);
文件。执行命令(“副本”);
selection.removeAllRanges();
});
表,th,td{
边框:1px实心#000;
}

复制
正文
复制一些文本
再复制一些文本
复制更多的文本

使用
数据目标
ID

$(文档).ready(函数(){
$(“输入[数据目标]”)。在(“单击”,函数()上){
var docSelector=document.createRange();
var get_text=document.getElementById(this.dataset.target);
docSelector.selectNodeContents(获取文本)
var selection=window.getSelection();
selection.removeAllRanges();
selection.addRange(docSelector);
文件。执行命令(“副本”);
selection.removeAllRanges();
});
});
表,th,td{
边框:1px实心#000;
}

复制
正文
复制一些文本
再复制一些文本
复制更多的文本

你能用console.log(docSelector.selectNodeContents(get_text[0])试试吗;嗨,谢谢你的回复!我试过了,得到了一个未定义的结果。错误消息不再显示,但仍不起作用此功能正常!谢谢你,我想这件事自己会解决的。这是对未来的良好洞察!干杯