特定の値をクリップボードにコピーさせるとき
input要素に値を設定して、それをJavaScriptで読み込んでコピーすると思います。
この時input要素を表示させないで、ボタンを押すだけでコピーさせることは可能でしょうか?
UI側からは、コピーボタンだけが見えててほしいです。
input要素をdisplay:none;に指定したり、typeをhiddenにするとコピーされません。
HTML
1<input id="input" type="text" value="コピーする値"> 2<button id="copy">Copy</button>
JavaScript
1function copy() { 2 var copyText = document.querySelector("#input"); 3 copyText.select(); 4 document.execCommand("copy"); 5} 6 7document.querySelector("#copy").addEventListener("click", copy);
入力フォームを非表示にして、値をコピーさせる方法があれば教えてください。
非表示要素へ値はどうやっていれてるのでしょうか
このタイトルだとコピーする→非表示にする ような印象を受けます。
実際はどうなのでしょうか。
説明不足ですみません。最初から非表示にしたいです。
実際はinput要素のvalueにコピーする値があります。
<input id="input" type="text" value="コピーする値">
コピーする値を保持する為にinput要素を使っていますが、
UI側から入力欄が見える必要はないので非表示にしたいです。
(ボタンだけ見えててほしいです)
すみません、解決いたしました!
解決したあとでなんですが、それってinputである必要すらないのでは?buttonにdata属性仕込んで取っても良さそうですよね
確かにわざわざ<div>を使わなくても、buttonに直接data属性を仕込むのが簡単ですね。
ありがとうございます。
回答1件
あなたの回答
tips
プレビュー