Javascript 在jquery中复制由换行符分隔的多个li文本
我有如图所示的li格式的数据,当我单击“复制”时,它应按如下方式复制到剪贴板Javascript 在jquery中复制由换行符分隔的多个li文本,javascript,jquery,html,Javascript,Jquery,Html,我有如图所示的li格式的数据,当我单击“复制”时,它应按如下方式复制到剪贴板 a[tab]b c[tab]d e[tab]f javascript代码在这里 function copy(element) { var $temp = $("<input>"); $("body").append($temp); $temp.val($(element).parent().text()).select(); document.execCommand("co
a[tab]b
c[tab]d
e[tab]f
javascript代码在这里
function copy(element) {
var $temp = $("<input>");
$("body").append($temp);
$temp.val($(element).parent().text()).select();
document.execCommand("copy");
$temp.remove();
$(element).parent().effect("highlight", {}, 1000);
}
<ul>
<li>a<br/>b</li>
<li>c<br/>c</li>
<li>e<br/>f</li>
</ul>
功能副本(元素){
变量$temp=$(“”);
$(“正文”)。追加($temp);
$temp.val($(element.parent().text()).select();
文件。执行命令(“副本”);
$temp.remove();
$(element.parent().effect(“highlight”,{},1000);
}
- a
b
- c
c
- e
f
试试下面的代码片段
功能副本(元素){
//使用textarea而不是input,因为它跳过了换行符
变量$temp=$(“”);
$(“正文”)。追加($temp);
//制作克隆以防止影响原始ul
var clone=$(element.parent().clone();
//现在将br替换为tab
$(克隆)。查找('br')。替换为(“\t”);
$temp.val(
//使用map获取所有li文本
clone.map(函数(){
返回$(this.text())
}).get().join(“\n”)//获取并通过新行连接
).select();
文件。执行命令(“副本”);
$temp.remove();
}
$('button')。在('click',function()上{
复制($('ul')。查找('li'));
});代码>
- a
b
- c
c
- e
f
复制
问题不清楚我有如图所示的li数据,当我点击“复制”按钮时,它应该是?那么你想要从剪贴板上换行而不是制表符?你需要什么?无法从你的问题中理解你的要求..请详细说明你的要求,以便在点击“复制”按钮后可以帮助你。ul标签应该作为文本复制到剪贴板上,作为[tab]b[newline]c[tab]d[newline]e[tab]f