前提・実現したいこと
テーブルタグの中の項目をボタンでコピペ出来るようにしたいです。
コピーは行ごとに1文対1ボタンにしたいです。
発生している問題・エラーメッセージ
試している方法だとid指定なので、
毎行idを変更しなければならず、生産性が低いです。
一括で行うような方法はないでしょうか?
該当のソースコード
html
1<h1>クリップボードテスト</h1> 2<thead></thead> 3<tbody> 4<tr><td id="targetID">右のボタン1で、この文がクリップボードにコピー!</td><td><button id="btnCopy">copy</button></td></tr> 5<tr><td id="targetID">右のボタン2で、この文がクリップボードにコピー!</td><td><button id="btnCopy">copy</button></td></tr> 6</tbody>
js
1document.querySelector('#btnCopy').addEventListener("click", () => { 2 const element = document.querySelector('#targetID'), 3 selection = window.getSelection(), 4 range = document.createRange(); 5 range.selectNodeContents(element); 6 selection.removeAllRanges(); 7 selection.addRange(range); 8 //console.log('選択文: ', selection.toString()); 9 const succeeded = document.execCommand('copy'); 10 if (succeeded) { 11 alert('コピー成功!'); 12 } else { 13 alert('コピー失敗!'); 14 } 15 selection.removeAllRanges();
試したこと
class指定で試しましたが今度は同一class全体指定なのでコピーしたいものを指定できません。
補足情報(FW/ツールのバージョンなど)
IE11,Chromeで動けば問題ないです。
回答1件
あなたの回答
tips
プレビュー