一覧画面表示の際だけ、条件に基づいてフィールドの値を変更もしくは同レコード内に
フィールドと無関係な文字列を表示したいのですが、良い方法はないでしょうか?
例:
日付フィールドの値をもとに、現在より未来の日付であれば一覧の日付の後に「(期間内)」、
また過去の日付であれば同様に「(期間外)」と表示。
サンプルを元に、文字色の変更などは出来たのですが、実際のデータを更新しないで
一覧表示内でのみ表示したいのですが、アイデアを頂けると有難いです。
よろしくお願いします。
一覧画面表示の際だけ、条件に基づいてフィールドの値を変更もしくは同レコード内に
フィールドと無関係な文字列を表示したいのですが、良い方法はないでしょうか?
例:
日付フィールドの値をもとに、現在より未来の日付であれば一覧の日付の後に「(期間内)」、
また過去の日付であれば同様に「(期間外)」と表示。
サンプルを元に、文字色の変更などは出来たのですが、実際のデータを更新しないで
一覧表示内でのみ表示したいのですが、アイデアを頂けると有難いです。
よろしくお願いします。
Kenz様
cstapの落合です。
方法としては2通りあります。
①カスタマイズビューを利用して表示を全て自作する
②DOMの要素の中身を書き換える
今回は②の方が簡単かと思います。
例として、レコード番号が3以上の時と3未満で表示を変更するサンプルを紹介します。
(function() {
“use strict”;
// 一覧ページ
kintone.events.on('app.record.index.show', function(event) {
var records = event.records;
var recordNums = kintone.app.getFieldElements('レコード番号');
for (var i = 0; i < records.length; i++) {
// 値の取得
var recordNumber = records[i].レコード番号.value;
// DOM要素の取得
var part = recordNums[i];
// レコード番号が3以上なら表示分け
if (recordNumber >= 3) {
part.innerHTML = '3以上のレコード';
} else {
part.innerHTML = '3未満のレコード';
}
}
});
})();
参考になりますでしょうか?
落合様
早速のご回答有難うございます。
やりたかったそのものが実現できました。
有難うございました。
Kenz様
解決したようで良かったです(^^)
また何かありましたら、お気軽にご質問ください。