читать пользовательские данные в jqGrid - PullRequest
0 голосов
/ 16 августа 2011

Я уже много исследовал и много пробовал, но еще не решил следующую проблему:

Цель - установить определенный цвет шрифта для некоторых строк, если условие выполняется.Данные для условия не отображаются в сетке.

моя идея: я создал пользовательские данные, подобные этим:

"userdata":{
"PROCESSED_TIME":"00:02.250"
,"rows":[
   {"id":"4711","status":"1"}, 
   {"id":"4712","status":"0"},
   {"id":"4713","status":"1"}
]}

Как теперь я могу прочитать статус, например, в "afterInsertRow""событие, чтобы покрасить шрифт, если статус равен 0?Обработанное время я уже поступил со следующей командой:

$("#MyGrid").getGridParam('userData').PROCESSED_TIME

Вам не нужно объяснять, как установить цвет строки, а только как получить доступ к значению состояния.

Может быть, использование пользовательских данных в этом случае также неправильно?

1 Ответ

0 голосов
/ 17 августа 2011

После намека на Олега я нашел решение. Вместо того, чтобы помещать статус в элемент «строки» пользовательских данных, я сохранил его как строку в отдельной переменной. Мои данные пользователя теперь выглядят так:

"userdata":{
"PROCESSED_TIME":"00:02.250",
"INAKTIVE_ROWS":"4711,4713"
,"rows":[
{"id":"4711"}, 
{"id":"4712"},
{"id":"4713"}
]}

В событии «loadComplete» я читаю строку и задаю цвет для неактивных строк следующим образом:

var inactiveRowstring = $("#MyGrid").getGridParam('userData').inactiveRows;

if (inactiveRowstring!=undefined){
 var rows = inactiveRowstring.split(',');
 for (var i=0; i<rows.length; i++){     
   var trElement = $('tr[id="'+rows[i]+'"]');
   trElement.removeClass('ui-widget-content');
   trElement.addClass('ui-widget-content-inactive');
 }
}

Спасибо за вашу помощь!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...