背景・実現したいこと
現在、プラグインであるkrewsheetを使用しており、krewsheetの一覧画面でフィールドの値を変更したときに、値に応じてアラートを表示するJavaScriptを以下のように作成しております。
kintone.events.on('app.record.index.show', function(e) {
if (window.krewsheet){
krewsheet.events.on('app.record.index.edit.change.×××', function (event) {
console.log(event.changes.field.×××);
if(event.changes.field.××× === '△△△') {
event.preventDefault();
// レコードを保存する
kintone.api('/k/v1/record', 'POST', {
app: kintone.app.getId(),
record: event.record
}, function (resp) {
// 保存に成功した場合は、アラートを表示する
swal({
title: '値が△△△です',
html: '<div style="text-align:left">下記リンクをクリックしてください。</div>',
footer: '<p><a href="https://************/●●●/" target="_blank">リンク</a></p>',
icon: 'success',
buttons: {
confirm: {
text: 'OK',
value: true,
visible: true,
className: 'swal-button--confirm',
closeModal: true
}
}
}).then(function (result) {
});
}, function (error) {
// 保存に失敗した場合は、エラーメッセージを表示する
swal({
title: 'エラーが発生しました',
text: '保存中にエラーが発生しました。もう一度やり直してください。',
icon: 'error',
buttons: {
confirm: {
text: 'OK',
value: true,
visible: true,
className: 'swal-button--confirm',
closeModal: true
}
}
});
});
} else {}
});
}
});
しかし、実行されないためコンソールを見てみると、
console.log(event.changes.field.×××);
の部分でundefinedと出ていました。
krewsheetの一覧画面から編集したレコードの値を取得するにはどうすればよいのでしょうか。
ご存じの方がいらっしゃいましたら、お力添えいただけると幸いです。
2件のコメント
Sakkuさん
間違ったら申し訳ありませんが、
[XXXX]の部分にもしかしてフィールドコードを入力したのでしょうか?
公式Docサイトによると、「changes.fieldは変更されたフィールドのオブジェクト」です。
変更されたフィールドを出力したいだけならば、後にフィールドコードが要らないと思います。
akikaさん
ご返信ありがとうございます。
おっしゃる通り、フィールドコードを入力しておりました。
上記のように変更したところレコード値の取得に成功いたしました。
お力添えありがとうございました。