使用 jQuery/JavaScript 复制到剪贴板文本框值

问题描述 投票:0回答:4
javascript jquery input copy clipboard
4个回答
13
投票

第 1 步: 像这样改变您的

copyToClipboard(element)

function copyToClipboard(text) {

   var textArea = document.createElement( "textarea" );
   textArea.value = text;
   document.body.appendChild( textArea );       
   textArea.select();

   try {
      var successful = document.execCommand( 'copy' );
      var msg = successful ? 'successful' : 'unsuccessful';
      console.log('Copying text command was ' + msg);
   } catch (err) {
      console.log('Oops, unable to copy',err);
   }    
   document.body.removeChild( textArea );
}

第 2 步: 给你的按钮一个 id,然后像这样给它添加一个事件监听器:

$( '#btnCopyToClipboard' ).click( function()
 {
     var clipboardText = "";
     clipboardText = $( '#txtKeyw' ).val(); 
     copyToClipboard( clipboardText );
     alert( "Copied to Clipboard" );
 });

2
投票

试试这个..这是正确的方法。

第一步:

function copyToClipboard(text) {

   var textArea = document.createElement( "textarea" );
   textArea.value = text;
   document.body.appendChild( textArea );

   textArea.select();

   try {
      var successful = document.execCommand( 'copy' );
      var msg = successful ? 'successful' : 'unsuccessful';
      console.log('Copying text command was ' + msg);
   } catch (err) {
      console.log('Oops, unable to copy');
   }

   document.body.removeChild( textArea );
}

第二步:

$( '#btnCopyToClipboard' ).click( function()
 {
     var clipboardText = "";

     clipboardText = $( '#txtKeyw' ).val();

     copyToClipboard( clipboardText );
     alert( "Copied to Clipboard" );
 });

1
投票

copyToClipboard()
获取一个元素作为参数。
txtKeyw
是 id,你必须在它之前加上
#
.


0
投票

我相信 document.execCommand('copy') 现在已被弃用,已在 Edge v 113.0 和 Opera v 98.0 上测试

改用这个:

function copyToClipboard() {
  var txtField = document.getElementById('txt-field');
   txtField.select();
   navigator.clipboard.writeText(txtField.value);
  alert('Copied to clipboard!');
}
© www.soinside.com 2019 - 2024. All rights reserved.