Изменение цвета родительской строки на основе значения дочернего столбца - jqWidgets - PullRequest
0 голосов
/ 06 мая 2020

У меня есть вложенная сетка, и я могу изменить цвет фона строки вложенной сетки в зависимости от значения одного из ее столбцов. Но я хотел бы также иметь возможность изменить цвет родительской строки.

Например: Родитель: Исследование, Дочерний: Сайт, Условие: Статус столбца = ожидание. Если сайт находится в состоянии ожидания, я хотел бы изменить цвет строки для ожидающего сайта, а также изменить цвет строки для исследования, которое содержит этот ожидающий сайт.

var cellclassname = function (row, column, value, rowdata) {
    if (rowdata.Status =="Pending") {
       return "red";
    }
}

Приведенный выше код работает для вложенной сетки:

columns: [
                          { text: '<b>Site ID</b>', datafield: 'ID', width: '15%', cellclassname: cellclassname},
                          { text: '<b>Organization Name</b>', datafield: 'SiteName', width: '70%', cellclassname: cellclassname},
                          { text: '<b>DSA</b>', datafield: 'Status', width: '15%', cellclassname: cellclassname} ]

, но не для родительской сетки:

columns: [
                      { text: '<b>Study Filter</b>', 
                      datafield: 'StudyName',  width: '100%', cellclassname: cellclassname }
            ]

Как я могу изменить свою функцию cellclassname, чтобы она также изменила цвет строки для родительской строки ?

Заранее спасибо!

1 Ответ

0 голосов
/ 09 мая 2020

Я создал обходное решение.

Со стороны базы данных мне удалось сгенерировать родительские данные с дополнительным столбцом, в котором говорится, что если какая-либо из дочерних данных ожидает рассмотрения, тогда родительское исследование также будет иметь статус ожидания. Поэтому при создании сетки я смог раскрасить родительскую строку на основе этой информации, и я сделал столбец статуса скрытым.

Мне все еще любопытно узнать, как я мог бы сделать это, используя вместо этого функции jqwidgets модификации исходных данных.

...