Думая об этом немного больше, проблема здесь, я подозреваю, что вы одеяло меняете цвет строки при инициализации сетки. Из [связан] код:
if (new_date_value <= current_datetime) {
InnerGrid.rows[i].style.backgroundColor="ff0066";
} else {
InnerGrid.rows[i].style.backgroundColor="ff6600";
}
Моя первая мысль заключается в Colourise только некоторые столбцов в строке. Выделение строк затем будет применяться к остальной части строки. Это просто быстрый ресница. Кроме того, это непроверено.
вы получите идею и, возможно, написать это лучше, чтобы удовлетворить ваши требования
например:
var colour1 = "ff0066";
var colour2 = "ff6600";
if (new_date_value <= current_datetime) {
colouriseRow(InnerGrid.rows[i], colour1);
} else {
colouriseRow(InnerGrid.rows[i], colour2);
}
function colouriseRow(myRow, cols){
for(var i = 0; i < myRow.cells.length; i++){
if(i > 2){ // skip the first 3 columns, colourise the rest
myRow.cells[i].style.backgroundColor=myColour;
}
}
}
, что заставило его прекратить работу? –
@Greg Он перестает работать, как только я добавил код в файл grid.htc (см. Http://stackoverflow.com/a/10813205/825024) – Otiel
Извините, что это отпало от моего радара - он очень занят сразу после запуска чтобы ответить на это. Если вы включите отладку сценариев в IE (нажмите F12> «Сценарий»> «Начать отладку»), вы попытаетесь выбрать строку, вы видите какие-либо ошибки? –