Javascript 在jquery中复制由换行符分隔的多个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

我有如图所示的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("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