先の投稿で、下図の通り、左側文字列(1行)と右側ラジオボタンの縦幅を、編集画面表示時に中央の文字列(複数行)の縦幅に合わせる方法をご教示いただきました。
実現したコードは下記の通り。
(() => {
'use strict';
let fieldElement = ['value-5540537', 'value-5540538','value-5540543'];
kintone.events.on([
'app.record.create.show', 'app.record.edit.show'
], (event) => {
for(let i = 0; i < fieldElement.length; i++) { // for判定を追加
let textarea = document.getElementsByClassName(fieldElement[i])[0]; // for判定を追加
let height = textarea.firstChild.firstChild.clientHeight;
let row = textarea.parentNode.parentNode;
[...row.children].forEach((field) => {
if (!field.getElementsByClassName('control-value-gaia').length) return;
[...field.getElementsByClassName('control-value-gaia')[0].children].forEach((el) => {
if (el.className === 'input-text-outer-cybozu') {
el.firstChild.style.display = 'table-cell';
el.firstChild.style.verticalAlign = 'middle';
el.firstChild.style.height = `${height + 6}px`;
} else if (el.className === 'userselect-cybozu') {
el.parentNode.style.display = 'table-cell';
el.parentNode.style.verticalAlign = 'middle';
el.parentNode.style.height = `${height}px`;
} else {
el.style.display = 'table-cell';
el.style.verticalAlign = 'middle';
el.style.height = `${height}px`;
}
});
});
} // for判定を追加
return event;
});
})();
次に、レコード詳細画面についても同条件にできないかと考えています。
つまり、現在は、左図の表示内容となっていますが、これを、右図の通り、左側文字列(1行)と右側ラジオボタンの縦幅を、編集画面表示時に中央の文字列(複数行)の縦幅に合わせたいと思っています。
これを実現するコード内容に関しご助言頂けると助かります。