一覧画面で数値の範囲によってセルの色を変えたい
回答¶
概要¶
サーバスクリプトで一覧画面上の指定した数値項目の範囲によって「セルCSS」を割り当て、セルの背景色を変更します。
操作手順¶
- テーブルを作成します。
- 「数値C(NumC)」を一覧画面の項目の設定で有効化します。
- 以下のサーバスクリプトを「新規作成」します。 条件は"行表示の前"を選択します。
- 以下のスタイルを「新規作成」します。 「出力先」は"一覧"を選択します。
スクリプト¶
JavaScript(サーバスクリプト)¶
// 数値Cの値が10,000未満であれば背景を赤、20,000〜30,000未満であれば黄色、30,000以上であれば青に変更します。背景色の指定は、事前に設定したスタイルを使用します。
const total = model.NumC;
if (total < 10000) {
columns.NumC.ExtendedCellCss = 'cell-blue';
} else if (total >= 10000 && total < 30000) {
columns.NumC.ExtendedCellCss = 'cell-yellow';
} else if (total >= 30000) {
columns.NumC.ExtendedCellCss = 'cell-red';
}
スタイル¶
ver1.4.20.0前後で記載方法が異なりますのでご注意ください。
ver1.4.20.0以降¶
CSS(スタイル)¶
/* 合計が10000円未満 */
.grid td.cell-blue {
background-color: blue;
color: white;
}
/* 合計が10000円以上、30000円未満 */
.grid td.cell-yellow {
background-color: yellow;
color: black;
}
/* 合計が30000円以上 */
.grid td.cell-red {
background-color: red;
color: black;
}
ver1.4.19.2以前¶
CSS(スタイル)¶
/* 合計が10000円未満 */
.cell-blue {
background-color: blue;
color: white;
}
/* 合計が10000円以上、30000円未満 */
.cell-yellow {
background-color: yellow;
color: black;
}
/* 合計が30000円以上 */
.cell-red {
background-color: red;
color: black;
}

