SweetAlert2を使えば比較的簡単に近いことを実装できるかと思います。
詳細が不明なので 以前の投稿 にあった内容を元に作ってあります。ひとまず最低限度の機能のみなので、必要に応じて肉付けが必要です。
あらかじめ SweetAlert2 を読み込んで、4~6行目を適宜設定して使用して下さい(6行目はChromeであればレコードの新規登録画面等でフィールド上で右クリック→検証を選択すれば「field-xxxxxxx」と記載されています)。
(function() {
'use strict';
let subTable = ''; // サブテーブルのフィールドコード
let fieldCode = ''; // 「ツイート」のフィールドコード
let fieldElement = 'field-'; // 「ツイート」に割り振られている番号
kintone.events.on([
'app.record.create.show', 'app.record.edit.show',
'app.record.create.change.' + subTable, 'app.record.edit.change.' + subTable
], (event) => {
let record = event.record;
[...document.getElementsByClassName(fieldElement)].forEach((field, index) => {
let button = document.createElement('button');
let buttonId = 'swal-' + index;
if (document.getElementById(buttonId)) return;
button.id = buttonId;
button.style.padding = '12px';
button.onclick = () => {
let recordData = kintone.app.record.get(), rec = recordData.record;
let inputValue = rec[subTable].value[index].value[fieldCode].value;
Swal.fire({
input: 'textarea',
inputValue: inputValue ? inputValue: '',
showCancelButton: true,
toast: true,
animation: false
}).then((result) => {
if (!result.value) return;
rec[subTable].value[index].value[fieldCode].value = result.value;
kintone.app.record.set(recordData);
});
};
field.style.display = 'none';
field.parentNode.appendChild(button);
});
return event;
});
})();