Ajax将数据值复制到剪贴板

时间:2017-05-31 14:36:01

标签: javascript jquery ajax

我需要在ajax成功函数中复制数据值

$.ajax({
    url: 'images/getDownloadUrl/',
    dataType: 'text',
    async: false,
    processData: false,
    contentType: false,
    type: 'POST',
    success: function(data){
    document.execCommand(data);
    }
});

如何将此变量数据的值复制到剪贴板,因为如果我只放置execCommand,这不起作用?

2 个答案:

答案 0 :(得分:5)

您可以将数据复制到剪贴板:

$.ajax({
    url: 'images/getDownloadUrl/',
    dataType: 'text',
    async: false,
    processData: false,
    contentType: false,
    type: 'POST',
    success: function(data){
       let copyFrom = document.createElement("textarea");
        document.body.appendChild(copyFrom);
        copyFrom.textContent = data;
        copyFrom.select();
        document.execCommand("copy");
        copyFrom.remove();
    }
});

答案 1 :(得分:0)

使用async: false,它对我有用,但只有一次。该副本可以工作一次,第一次单击该按钮即可执行ajax调用。使用多个按钮也不起作用-仅在任何一个按钮上的第一次单击均可。

复制永远无法与async: true一起使用。