Ответ 1
Возможно, вам стоит попробовать это
var colClass = el.className
Я хотел бы получить значение атрибута class для элемента с использованием JavaScript. Однако в этой конкретной ситуации у меня нет роскоши библиотеки, такой как YUI, jQuery и т.д., И вам нужно придерживаться основ.
В частности, я перебираю таблицу и хочу проверить класс ячейки.
Я пробовал:
var colClass = el.getAttribute('class');
и
var colClass = el.class;
Но, похоже, не работает. В приведенном выше примере el
устанавливается из массива ячеек таблицы, например var el = document.getElementById('myTable').rows[y].cells[y];
Возможно, вам стоит попробовать это
var colClass = el.className
Эта строка, которую вы опубликовали, должна работать:
var colClass = el.getAttribute('class');
Не могли бы вы сообщить, какую ошибку вы получите в браузере? Убедитесь, что el не является нулевым.
Если вы не получите этого для работы, атрибут объекта className, а не класс:
var colClass = el.className;
className
?
<html>
<body id="myid" class="mystyle">
<script>
var x=document.getElementsByTagName('body')[0];
document.write("Body CSS class: " + x.className);
document.write("<br>");
document.write("An alternate way: ");
document.write(document.getElementById('myid').className);
</script>
</body>
</html>
Помните:
Если вы получаете сообщение об ошибке, а className не работает, это может быть связано с тем, что ваш элемент является объектом jQuery.
На рисунке выше вы видите, что я не могу использовать className для объекта jQuery