条件によって適用するスタイルシートを設定

お世話になっております。

サブテーブルで列の非表示をスタイルシートに記述することで実現しています。ログインユーザーによって非表示にする列を変えたいと思います。

条件によって適用するスタイルシートを設定することは可能でしょうか?

ご教授いただけますでしょうか。

よろしくお願いいたします。

古川さん

スタイルシートだけで、「ログインユーザーによって適用するスタイルシートを設定」するのは出来ないと思います。
下記の対応案ではいかがでしょうか?

・列を非表示にするスタイルシートを設定
・サブテーブルのクラスにより、列を表示するスタイルシートを設定
・JavaScript カスタマイズで、ログインユーザー毎にサブテーブルにクラスを追加

イベント処理で列を非表示にすると、一瞬列が見えてしまいますので、既定は非表示にします。
ただイベント処理で列表示することになるため、少しちらつきが発生します。

指定例

.subtable-gaia.subtable-5566968 th:nth-child(1),
.subtable-gaia.subtable-5566968 td:nth-child(1) {
display: none;
}
.subtable-gaia.subtable-5566968.xp-case1 th:nth-child(1),
.subtable-gaia.subtable-5566968.xp-case1 td:nth-child(1) {
display: table-cell;
}

(function() {
"use strict";
kintone.events.on(["app.record.detail.show", "app.record.create.show", "app.record.edit.show"], function(event) {
var el1 = document.querySelector('.subtable-gaia.subtable-5566968');
if (kintone.getLoginUser().code === 'xxxxx') {
el1.classList.add('xp-case1');
}
return event;
});
})();

 

rex0220さん

お世話になっております。

いつもありがとうございます。

ソースコードまで記載していただき、わかりやすかったです。

これでやりたいことが実現できます!

どうもありがとうございました。