Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Поиск тегов с class (https://javascript.ru/forum/misc/22893-poisk-tegov-s-class.html)

nule 04.11.2011 14:14

Поиск тегов с class
 
Приветствую!
Пытаюсь отловить теги td class="spacerow".
getElementsByTagName прекрасно ищет все td. Но вот с конкретными классами у меня не получается.
Конструкция
Код:

var tdclasses = document.getElementsByTagName("td class="spacerow"");
не срабатывает. Комбинации с двойными и одинарными кавычками пробовал. Наверное, какая-то тонкость в синтаксисе внутри () ?
Спасибо!

Gvozd 04.11.2011 14:22

Цитата:

Сообщение от nule
Наверное, какая-то тонкость в синтаксисе внутри () ?

я вот даже не знаю что вам сказать.
с чего вы решили, что тот бред, что вы написали, должен работать?

У вас проблемы с чтением документации, с базовым английским, или со всем вместе?

nule 04.11.2011 14:31

Если Вас интересуют мои рассуждения, то вот они:
Код:

var td = document.getElementsByTagName("td");
работает и ищет все td. Но мне нужны не все td, а td class="...". Поэтому первым делом попробовал вместо td указать то, что мне было нужно. Вопиющего нарушения логики я тут не вижу.

trikadin 04.11.2011 14:38

Находите все td через getElementsByTagName. Дальше перебираете получившийся массив и выкидываете (точнее, не копируете в новый) те элементы, у которых className.indexOf("spacerow") == -1.

Но вообще - учитесь пользоваться гуглом. И документацией.

Gvozd 04.11.2011 15:01

Цитата:

Сообщение от nule
var td = document.getElementsByTagName("td");
работает и ищет все td.

document.getElementsByTagName("td")
Цитата:

Сообщение от nule
Вопиющего нарушения логики я тут не вижу.

А если хоть чуть-чуть воспользоваться мозгом??

trikadin 04.11.2011 15:52

Цитата:

Сообщение от Gvozd
А если хоть чуть-чуть воспользоваться мозгом??

Как говорит моя знакомая, мозг - он либо есть, либо его нет. Так что ему можно только помочь.

FINoM 05.11.2011 07:12

document.querySelectorAll('td.classname');

А так, с помощью циклов: выбрать все td, прогнать их по циклу, проверяя класс. Можно даже попробовать заюзать итераторы:
Array.prototype.slice.call(document.getElementsByTagName('td')).forEach(function(){
...
})

nule 05.11.2011 19:36

Цитата:

Сообщение от FINoM
выбрать все td, прогнать их по циклу, проверяя класс

Спасибо. Так и сделал.


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