レコード一覧画面の数字を条件により文字色を変えたい

入力した数字を一覧画面で◯以上は赤、◯以下は黒と条件ごとに色を付けたいのですが、
javascriptでできますでしょうか?
始めたばかりでよくわからず、、、、よろしくお願い致します。

できます。
開発tipsのこちらあたりが参考になるかと思います。

ログインユーザーが担当しているレコードに背景色をつける

ありがとうございます。

質問ですが、一覧画面の文字列一行のフィールドに対しては下記のjavascriptでできたのですが、こちらを数値では使用できないでしょうか?

(function() {
‘use strict’;

kintone.events.on('app.record.index.show',function(event){

  let records = event.records;
  let elems = kintone.app.getFieldElements('フィールド名');

  console.log(records);
  
  for(let i = 0; i<records.length; i++){
    
    let reco = records[i];
    let letter = reco.フィールド名.value; //1つのレコードのステータスの中身
    
    let elem = elems[i];
    
    if(letter === '赤にしたい文字'){
        elem.style.fontWeight = 'bold';
        elem.style.color = 'red';
    }else if(letter === '黒にしたい文字'){
        elem.style.fontWeight = 'bold';
        elem.style.color = 'black';
        }
  }
  return event;
  
});

})();

レコードから取り出したときに数値として取り出して、if文の何個以上、以下を判定でいいのかなと思います。

(function() {
‘use strict’;

kintone.events.on('app.record.index.show',function(event){
  let records = event.records;
  let elems = kintone.app.getFieldElements('フィールド名');
  console.log(records);
  for(let i = 0; i<records.length; i++){
    let reco = records[i];
//数値として
    let letter = Number(reco.フィールド名.value); //1つのレコードのステータスの中身
    let elem = elems[i];

//数値で判定    
    if(letter >= 5){
        elem.style.fontWeight = 'bold';
        elem.style.color = 'red';
    }else if(letter < 2){
        elem.style.fontWeight = 'bold';
        elem.style.color = 'black';
        }
  }
  return event;
  
});
})();

ありがとうございます。
温度の数値フィールドで25.1℃以上は赤文字、25.0℃以下は黒文字にしたく、
下記のようにしたのですができませんでした。数値フィールドの単位は℃をつけています。
どこか違いますでしょうか?

(function() {
‘use strict’;

kintone.events.on(‘app.record.index.show’,function(event){
let records = event.records;
let elems = kintone.app.getFieldElements(‘温度’);
console.log(records);
for(let i = 0; i<records.length; i++){
let reco = records[i];
//数値として
let letter = Number(reco.温度.value); //1つのレコードのステータスの中身
let elem = elems[i];

//数値で判定
if(letter >= 25.1){
elem.style.fontWeight = ‘bold’;
elem.style.color = ‘red’;
}else if(letter <= 25.0){
elem.style.fontWeight = ‘bold’;
elem.style.color = ‘black’;
}
}
return event;

});
})();

のイコールが環境文字?になってるからだと思われます(25.1の方は大丈夫みたいです)

(function () {
	"use strict";
	const fieldName = "温度"
	kintone.events.on("app.record.index.show", function (event) {
		let records = event.records;
		let elems = kintone.app.getFieldElements(fieldName);
		if (!elems) return event
		console.log(records);
		for (let i = 0; i < records.length; i++) {
			let reco = records[i];
			//数値として
			let letter = Number(reco[fieldName].value); //1つのレコードのステータスの中身
			let elem = elems[i];

			//数値で判定
			if (letter >= 25.1) {
				elem.style.fontWeight = "bold";
				elem.style.color = "red";
			} else if (letter <= 25.0) {
				elem.style.fontWeight = "bold";
				elem.style.color = "black";
			}
		}
		return event;
	});
})();
1 Like

pomo様ありがとうございました。
反映することができました。

1 Like

このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。