kintone導入支援
kintoneでイベント発生時などに、フィールドの値を書き換える方法
kintoneでは、JavaScript APIを通じて入力・編集画面の値を書き換えることができます。例えば、画面を表示したときに値を挿入した状態にしたい場合は、次のようにします。
let events = [
'app.record.create.show',
'app.record.edit.show'
];
kintone.events.on(events, (event) => {
record['field_code'].value = 'この文字列で上書き';
});
これで、編集画面を開いたときに「field_code」というフィールドコードの入力欄の値が書き換わります。
しかし、画面上に置いたボタンをクリックしたタイミングや、その他の任意のタイミングで値を書き換えたい場合は、上記のコードでは動作しません。次のような方法で行います。
イベント発生時に値を書き換える方法
例えばここでは、画面の上部にボタンを追加します。
let button = document.createElement("button");
button.innerHTML = 'click';
button.setAttribute('type', 'button');
button.setAttribute('id', 'btnTranslate');
document.querySelector('.gaia-argoui-app-edit-buttons').append(button);
そして、このボタンがクリックされたときに値を書き換えられるようにしましょう。まずはイベントを定義します。
document.querySelector('#btnTranslate').addEventListener('click', function () {
});
そしたら、kintoneオブジェクトからフィールドのオブジェクトを取得します。
document.querySelector('#btnTranslate').addEventListener('click', function () {
let records = kintone.app.record.get();
そして、このオブジェクト内の該当するフィールドの値を書き換えます。
records.record.content_en.value = '書き換えます';
そしたらこれを、setメソッドで戻します。
kintone.app.record.set(records);
これで、値を書き換えることができます。