我正在尝试将ajax的返回结果复制到剪贴板,但是每次我收到“ document.execCommand('cut'/'copy')被拒绝时” 我花了一些时间解决它,但没有成功
$('form').submit(function(e){
e.preventDefault();
$.ajax({
url: $('#test').attr('action'),
data: $('#test').serialize(),
type: 'post',
dataType: 'json',
success: function(data){
var $temp = $("<input />");
$(data.response).append($temp).select();
document.execCommand("copy");
$temp.remove();
console.log(data.response);
}
});
});
答案 0 :(得分:0)
修复此行
a = []
for x,y in new2.items():
a[y].append(x)
print(a)
到
$(data.resposne).append($temp).select();
$(data.response).append($temp).select();
答案 1 :(得分:0)
我同样感到困惑。主线程似乎是:
How do I copy to the clipboard in JavaScript?
通读您和我正在尝试的document.execCommand(“ copy”)方法,有两个警告提示给我:
*)仅允许通过https连接(我在家用服务器测试环境中默认情况下无法进行模拟,因此也许也适用于您)
*)它必须是用户启动的操作的一部分(以防止隐藏的副本使用户感到困惑)。 “ click”事件是通常给出的示例。您选择绑定的事件(表单提交)可以在函数中调用。那么,也许通过其更通用的访问方式不符合用户发起的交互的血统书?