Anonymous
Extjs - Изменение класса CSS в другой ячейке на основе значения и рендеринга
Сообщение
Anonymous » 22 сен 2025, 12:06
У меня есть требование изменить класс ячейки nominal_currency_id на основе информации из столбца ch_nominal_currency_id_flag . Я просто хочу присвоить ему цвет фона. Рендерератор переопределяет это, и я все еще вижу идентификатор вместо значения кода. Метаданные , конечно, работает только для столбца, содержащего рендеринг. />
Код: Выделить всё
{
name: 'nominal_currency_id',
title: 'Nominal Currency',
editable: true,
type: 'string',
maxLength: 3,
formSortOrder: 13,
resolveView: {
dataProviderId: 'PROVIDER_ID',
childrenTable: 'pd_currency',
remote: false,
valueField: 'currency_id',
displayField: 'currency_code',
addBlank: true
}
},
{
name: 'ch_nominal_currency_id_flag',
title: 'Ch Nominal Currency Flag',
editable: true,
type: 'boolean',
hidden: true,
hiddenInForm: true,
formSortOrder: 45
},< /code>
< /div>
< /div>
< /p>
Я также добавляю код, который добавляет мой разрешение < /code>, возможно, это поможет в решении < /p>
if (column.resolveView !== undefined) {
;(() => {
const resolveView = column.resolveView
const columnName = column.name
let dropDownTemplate
let dropDownTemplateList
tempColumnType.filter = {
type: 'resolver',
addBlank: false,
underlyingField: columnName,
...resolveView,
control,
}
tempColumnType.renderer = function (value, _metaData, record) {
if (!_.isNil(value)) {
const retrivedValue = app.nameResolver.resolve(
{
value,
underlyingField: columnName,
...resolveView,
},
record?.data,
)
return _.isString(retrivedValue)
? _.unescape(retrivedValue)
: retrivedValue
}
}
if (column.editable !== false) {
tempColumnType.field = {
xtype: 'resolvercombo',
underlyingField: columnName,
...resolveView,
}
}
if (dropDownTemplate) {
tempColumnType.field.tpl = dropDownTemplateList
tempColumnType.field.displayTpl = dropDownTemplate
tempColumnType.filter.tpl = dropDownTemplateList
tempColumnType.filter.displayTpl = dropDownTemplate
}
})()
}
Подробнее здесь:
https://stackoverflow.com/questions/797 ... d-renderer
1758532010
Anonymous
У меня есть требование изменить класс ячейки nominal_currency_id на основе информации из столбца ch_nominal_currency_id_flag . Я просто хочу присвоить ему цвет фона. Рендерератор переопределяет это, и я все еще вижу идентификатор вместо значения кода. Метаданные , конечно, работает только для столбца, содержащего рендеринг. /> [code] { name: 'nominal_currency_id', title: 'Nominal Currency', editable: true, type: 'string', maxLength: 3, formSortOrder: 13, resolveView: { dataProviderId: 'PROVIDER_ID', childrenTable: 'pd_currency', remote: false, valueField: 'currency_id', displayField: 'currency_code', addBlank: true } }, { name: 'ch_nominal_currency_id_flag', title: 'Ch Nominal Currency Flag', editable: true, type: 'boolean', hidden: true, hiddenInForm: true, formSortOrder: 45 },< /code> < /div> < /div> < /p> Я также добавляю код, который добавляет мой разрешение < /code>, возможно, это поможет в решении < /p> if (column.resolveView !== undefined) { ;(() => { const resolveView = column.resolveView const columnName = column.name let dropDownTemplate let dropDownTemplateList tempColumnType.filter = { type: 'resolver', addBlank: false, underlyingField: columnName, ...resolveView, control, } tempColumnType.renderer = function (value, _metaData, record) { if (!_.isNil(value)) { const retrivedValue = app.nameResolver.resolve( { value, underlyingField: columnName, ...resolveView, }, record?.data, ) return _.isString(retrivedValue) ? _.unescape(retrivedValue) : retrivedValue } } if (column.editable !== false) { tempColumnType.field = { xtype: 'resolvercombo', underlyingField: columnName, ...resolveView, } } if (dropDownTemplate) { tempColumnType.field.tpl = dropDownTemplateList tempColumnType.field.displayTpl = dropDownTemplate tempColumnType.filter.tpl = dropDownTemplateList tempColumnType.filter.displayTpl = dropDownTemplate } })() }[/code] Подробнее здесь: [url]https://stackoverflow.com/questions/79771426/extjs-changing-css-class-in-another-cell-based-on-value-and-renderer[/url]