前提・実現したいこと
テーブルにループで表示している中のある特定のカラムに対してクリップボードにコピーできるようにしたいのですが、以下の画像のとき2番目の”てすと3”の欄の赤く丸付けているボタンを押すと何も反応しません。(1番目のてすと2の方ではしっかりクリップボードにコピーができます。)
該当のソースコード
PHP
1<td> 2 <div class="d-flex"> 3 <div id="targetID">{{ request()->fullUrl() }}/ans/{{ $questions->url }}</div> 4 <button id="btnCopy" style="border: initial;"> 5 <p class="m-n1"><i class="far fa-copy fa-fw"></i></p> 6 </button> 7 </div> 8</td>
JS
1document.addEventListener("DOMContentLoaded", function(){ 2 document.querySelector('#btnCopy').addEventListener("click", () => { 3 const element = document.querySelector('#targetID'), 4 selection = window.getSelection(), 5 range = document.createRange(); 6 range.selectNodeContents(element); 7 selection.removeAllRanges(); 8 selection.addRange(range); 9 console.log('選択された文字列: ', selection.toString()); 10 const succeeded = document.execCommand('copy'); 11 if (succeeded) { 12 alert('コピーしました'); 13 } else { 14 alert('コピーが失敗しました'); 15 } 16 selection.removeAllRanges(); 17 }); 18}, false); 19
解決策に含め、
どのようにキーワードを使えばいいか分かっていないため、この場合どのような検索キーワードを用いれば良いのか教えていただけるととても嬉しいです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/10/12 04:03