Обновление только одной ячейки таблицы - PullRequest
2 голосов
/ 27 июля 2011

Я создал таблицу 3х3.Каждый столбец генерируется с помощью функции.Функция в основном возвращает элемент "td".Иначе, где в коде я запускаю событие, основанное на некоторых условиях.Всякий раз, когда событие инициируется, я хочу обновить одну конкретную ячейку таблицы.Ни к одной из клеток не прикреплены идентификаторы.У меня вопрос, как я могу связать «тд», который я хочу обновить с событием?

У меня нет конкретного контекста, который ссылается только на этот тд.

Ответы [ 3 ]

2 голосов
/ 27 июля 2011

Без использования jQuery или чего-либо еще вы можете использовать селекторы DOM, такие как .childNodes (и повторяющиеся, пока не будете удовлетворены), .lastChild, .firstChild, .parentNode и т. Д.

По этой ссылке приведено несколько примеров.

Хотя, если вы часто этим пользуетесь, динамически создавайте ID в JS. Как итерации по всей вашей таблице (с .childNodes), присвоение идентификатора (например, row1-col2) каждому td. Это упростит остальную часть вашего кода.

2 голосов
/ 27 июля 2011

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

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

1 голос
/ 27 июля 2011

Вот jsFiddle, чтобы показать вам, как с jQuery:

http://jsfiddle.net/HzBFE/

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