Javascript 单击按钮时如何将自定义文本复制到剪贴板?
我有一个输入,并希望有一个副本链接旁边的标签 当我单击“复制”时,我不仅希望复制输入值,而且希望预先添加更多文本Javascript 单击按钮时如何将自定义文本复制到剪贴板?,javascript,jquery,Javascript,Jquery,我有一个输入,并希望有一个副本链接旁边的标签 当我单击“复制”时,我不仅希望复制输入值,而且希望预先添加更多文本 http://www.test.com?code=+输入值 我该怎么做 //copy text function getLink(id) { var copyText = document.getElementById(id); copyText.select(); copyText.setSelectionRange(0, 99999); /* For
http://www.test.com?code=
+输入值
我该怎么做
//copy text
function getLink(id) {
var copyText = document.getElementById(id);
copyText.select();
copyText.setSelectionRange(0, 99999); /* For mobile devices */
document.execCommand("copy");
alert("Copied the text: " + copyText.value);
}
使用上述代码,仅复制值。您可以在当前输入元素中编辑值,然后在复制编辑值后将其还原为原始值。大概是这样的: 函数getLink(e){ const copyPad=e.target.PreviousElement同级, storedValue=copyPad.value, copyValue='1〕http://www.test.com?code=“+存储价值; copyPad.value=copyValue; copyPad.select(); copyPad.setSelectionRange(0,99999);/*用于移动设备*/ 文件。执行命令(“副本”); log(“复制文本:+copyPad.value”); copyPad.value=存储值; } const but=document.querySelector(“#copyLink”); 但是.addEventListener('click',getLink)代码>
复制
粘贴到这里来检查
js和浏览器有很多反黑客功能,如果你不能偷偷地将不可见的内容添加到我看到的剪贴簿中,我不会感到惊讶。。因此,我必须创建一个具有正确值的隐藏输入,然后复制它。我明白了。隐藏输入不合适,copy命令要求元素可见,尽管它必须只有在执行命令时才可见。您也可以使用现有代码来实现这一点。只需存储文本输入的值,用您自己的值替换输入中的值,选择并复制,然后恢复保存的值。用户不会看到任何这种情况发生,因为在执行完所有JS之后,页面将被下一次呈现。我明白了。。。因此,我可以附加一个tmp输入,并将其删除。是的,这也是可能的,但是我上面描述的,您也可以使用现有的输入元素。