Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   Изменение цвета ячейки (динамическая таблица) не по событию (https://javascript.ru/forum/dom-window/3035-izmenenie-cveta-yachejjki-dinamicheskaya-tablica-ne-po-sobytiyu.html)

ImSWORDMASTER 12.03.2009 13:29

Изменение цвета ячейки (динамическая таблица) не по событию
 
Задача выглядит так: имеется динамически-строящаяся таблица
из трех столбцов
некоторая дата | чекбокс | текст

необходимо строки, где дата приходится на выходные, выделить другим цветом для наглядности. (bgcolor)
то есть цвет фона надо задавать уже при самой прорисовке, а не по какому-то событию вроде "навести мышь" или "щелкнуть по ячейке"

может мне кто-нибудь подсказать сам принцип, логику? что надо делать? как конкретно реализовать, думаю, разберусь

Zibba 12.03.2009 13:39

Событие onload!? Или генерировать свое событие oncreatetable!?

ImSWORDMASTER 12.03.2009 16:30

ммммм...
честно говоря, мне не очень понятно, как на онлоад это повесить, если табличка динамическая

с моей точки зрения выглядит примерно так:
крутится джава-цикл. Итератор по листу дат

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

а вот по какому поводу функцию вызывать? onCreateRow?

PS в любом случае, спасибо за подсказку. теперь знаю, в каком направлении надо рыть :D

Zibba 12.03.2009 21:21

Думаю можно написать функцию проверки соответствия даты на то является она выходным днем или нет, и вызывать ее при создании строки таблицы передавая туда данные. А вообще я думаю сделал бы все через объекты. Например создал бы объект tr, добавил бы ему свойство date, далее в конструкторе вызывал бы какой то добавленный заранее метод проверяющий является ли свойство date данного объекта выходным днем или нет и в зависимости от этого например свойству color этого же объекта присваивал свое значение. Далее в конце создавал бы строку таблицы и добавлял ее в создаваемую таблицу. В итоге все бы сводилось к простому вызову new tr().__constructor() с передачей нужных параметров (например даты и таблицы к которой нужно прикрепить строку).
P.S. Просто мысли в слух, которые ни на что не претендуют.


Часовой пояс GMT +3, время: 12:01.