【解決方法】ASP.NET C# または JavaScript を使用してポップアップ ページからコンテンツをコピーする方法

プログラミングQA


やあ、

ポップアップページ(ポップアップページはaspxページです)からコンテンツをコピーしたいのですが、そのポップアップページに「ボタン」を1つ追加する必要があります。 そのボタン (COPY) をクリックすると、ASP.NET C# または Javascript を使用して、すべてのコンテンツをコピーする必要があります (コンテンツのラベルが使用されます)。

これが機能している私のコードです。 しかし、私のコードには 1 つの問題があります。 Button(Copy) content should copy をクリックしてこれを達成する方法。

それは今働いています。 しかし、アプリケーションをテストした後に 1 つ問題が見つかりました。

問題は、 gridview 内の各行にアイコンがあることです。 アイコンをクリックすると、ポップアップのように表示されます(実際にはポップアップウィンドウではなく、新しいページとして追加されました)。 私の疑問は、最初に任意の行の COPY ボタンをクリックした場合、コンテンツをコピーできることです。 以前にコピーした古いコンテンツをコピーしています。

この問題を修正する方法、任意の行の任意のアイコンの[COPY]ボタンをクリックすると、プレビュー/初回コピー データ/コンテンツではなく、その行のコンテンツ データがコピーされます。

HTML
<pre><input type="button" id="btnCopy"  value="Copy" onclick="window.clipboardData.setData('text', document.getElementById('ltlContentName').innerText);" />

私が試したこと:

上記のコードを試しました。

<input type="button" id="btnCopy"  value="Copy" onclick="window.clipboardData.setData('text', document.getElementById('ltlTemplateName').innerText);" />

解決策 1

次の関数を使用します。

JavaScript
function copyToClipboard(sID) {
        var aField = document.getElementById("hiddenField");

        aField.hidden   = false;
        aField.value    = document.getElementById(sID).textContent;
        aField.select();
        document.execCommand("copy");
        alert("Following text has been copied to the clipboard.\n\n" + aField.value);
        aField.hidden = true;
    }

詳細については、このリンクにアクセスしてください
JavaScript でクリップボードにコピーするにはどうすればよいですか? – スタックオーバーフロー[^]

コメント

タイトルとURLをコピーしました