У меня есть jqgrid с подсетой.jqgrid: Как отформатировать основные/детализированные сетки?
Я пытаюсь применить различные цвета для мастеринга и детализации сеток. У меня есть два правила: первый - это чередование нечетных и парных цветов, а другой - применение определенного CSS к строке, основанной на значениях определенного поля.
Оба мастера & деталь сетка, содержит следующее gridComplete функции, где, очевидно, ChildNodes индекса изменяется вызывают таблицы содержат различные поля:
gridComplete: function() {
var _rows = $(".jqgrow");
for (var i = 0; i < _rows.length; i++) {
_rows[i].attributes["class"].value += " " + _rows[i].childNodes[4].textContent;
_rows[i].attributes["class"].value += " " + _rows[i].childNodes[4].innerText;
}
applyZebra("jqTicketgrid");
}
функция applyZebra обеспечивает чередование нечетных/пары цвета и уже была испытана на другом сетка, которая не содержит подрезку. Для справки, я нашел выше решения в других разрешенных вопросах этого форума, и оба работают с «простыми» jqgrids (не master/detail).
ПРОБЛЕМА Мастера сетка отформатирована только тогда, когда я нажимаю, чтобы расширить строки детализации, в то время как деталь Подсеточных никогда чередующихся цвета, ни применять формат на основе содержимого ячеек ...
Где я неправ? Pheraps Я должен перехватить другое событие, которое не является gridComplete? В противном случае с сеткой & субгриды невозможно использовать _rows [x] & childNodes [y] атрибуты?
Просим уточнить, если необходимо, thx.
Заранее благодарен!
Спасибо @Oleg! Я попытался изменить с помощью $ (". Jqgrow", это), но он все равно не работает. О cellattr, я пытаюсь заставить его работать, и я согласен с вашими интересными соображениями. Но я не могу заставить его работать. Можете ли вы привести мне пример, пожалуйста? Я даже пытался поместить этот код в определение сетки, но он не работает: cellattr: function (rowId, cellValue, rawObject, cm, rdata) { return 'class = "A"'; } Еще раз спасибо! – Larry
У меня есть класс с именем A, который я использую для обозначения строк по степени серьезности ... – Larry
Хорошо. Я преуспеваю, чтобы заставить его работать ** только для ячейки **: я поставил cellattr в colmodel, просто чтобы проверить: 'cellattr: function (rowId, tv, rawObject, cm, rdata) {return 'class =" A " ; } 'и это работает! ** Можете ли вы объяснить мне, как я могу добавить класс во всю строку, пожалуйста? ** Большое спасибо @Oleg! – Larry