新規投稿
フォローする

ボタンクリックでクリップボードにコピー

いつもお世話になっております。


レコード詳細画面上部に設置したボタンをクリックするとそのアプリにある項目の文字列が結合されたものがクリップボードにコピーされるというカスタマイズを行いたいのですが、うまくいかず困っております。


今現在のコードになります。

(function() {
"use strict";

kintone.events.on('app.record.detail.show', function(event) {
// メニュ右側の空白部分にボタンを設置
var record = event.record;
var alertmail = '';
var myIndexButton = document.createElement('button');

myIndexButton.id = 'my_index_button';
myIndexButton.innerHTML = 'クリックでコピー';
myIndexButton.onclick = function() {
alertmail = '結合した文字列';

//ここからクリップボードにコピー
var text = kintone.app.record.get();
var record = text.record;
record['文字列複数行']['value'] = alertmail.dataset.copy_clipboard;
kintone.app.record.set(record);
record.select();
document.execCommand("copy");
alert('クリップボードにコピーしました。');
}
kintone.app.record.getHeaderMenuSpaceElement().appendChild(myIndexButton);
});
})();


もしくは結合した文字列をアラート表示し、コピーできたらと思うのですが
ctrl+cでは出来ませんでしたので何か別の方法があればお知恵を拝借したく思います。

ブラウザ環境はwindows10、Google Chromeバージョン: 71.0.3578.98です。

 

以上何卒よろしくお願いいたします。

0

4件のコメント

Avatar
FM

以下を参考にすると複数行フィールドを用意しなくてもコピーできますが、如何でしょうか。

https://webllica.com/copy-text-to-clipboard/ 

0
Avatar
Shotaro Matsuda

金沢さん、こんにちは。

プロジェクト・アスノートの松田です。

FMさんが紹介されているコードを参考に、ブックマークレットという形で

レコード内容をコピーする方法を考えてみました。

ご参考までに。

kintoneをもっと便利にしてくれるブックマークレットの活用 - Qiita

このままブックマークレットの形で使ってもいいですし、現在作られているボタンを押したときに

上記の処理を動かしてあげるようにしてもいいかと思います。

 

0
Avatar
金沢麻未

FM様

お返事が遅くなり申し訳ございません。

教えて頂きました方法で無事実現することが出来ました。

ありがとうございます。

 

 

Shotaro Matsuda様

お世話になっております。

ブックマークレットも便利ですね。

私一人で使用する分には問題なさそうですので是非参考にさせて頂きます。

ありがとうございます。

0
Avatar
にしかわ

自分もハマったのでメモを残しておきます。

https://qiita.com/nishikawa7/items/ced5d9ded28793250aa3

0
サインインしてコメントを残してください。