首页 > 解决方案 > 我想将 input 和 textarea 的值复制到剪贴板

问题描述

我有一个问题^^;

我想通过使用 js 或 jquery 按 copy1 将输入复制到剪贴板

我想通过按 copy2 将 textarea 复制到剪贴板

如果你让我知道怎么做,谢谢。

===============================================

我为此搜索了一些代码,但感觉很困难。

我应用了这段代码

$("#copy_code").click(function(e) {

  e.preventDefault();

  document.execCommand('copy', false, document.getElementById('select-this').select());

  alert("copy is completed")
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" name="" value="{{p.content1}}" size="40">
<button class="btn btn-outline-primary btn-sm myinput" id="copy_code select-this">copy1</button>

例如) https://codepen.io/fabean/pen/GprQJa

但错误

Uncaught TypeError: Cannot read property 'select' of null
    at HTMLButtonElement.<anonymous> ((index):251)
    at HTMLButtonElement.dispatch (custom.js:3)
    at HTMLButtonElement.q.handle (custom.js:3)

标签: jquerydjangotemplatescopy

解决方案


id="copy_code select-this"是不正确的。根据您的 JS 猜测,您实际上想要inputto haveid="select-this"和 the buttonto have id="copy_code"

$("#copy_code").click(function(e) {

  e.preventDefault();

  document.execCommand('copy', false, document.getElementById('select-this').select());

  alert("copy is completed")
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input id="select-this" type="text" name="" value="{{p.content1}}" size="40">
<button class="btn btn-outline-primary btn-sm myinput" id="copy_code">copy1</button>


推荐阅读