Как скрыть все блоки с одним Id?

На странице есть 3 вот таких блока.
<li id="loader" ></li>
<li class="sign-up"  id="test" style="display:block;">
Содержимое 
</li>


По нажатию на кнопку они должны исчезать.
var hidden_div=document.getElementById('test');
hidden_div.style.display = 'none';


Понятно, что id уникален, но тогда как прописать несколько id или как сделать?=)
  • Вопрос задан
  • 2648 просмотров
Решения вопроса 1
@vdem
Использовать конечно же классы а не id, как уже ответили. Вот решение на чистом JavaScript:
var els = document.getElementsByClassName('sign-up');
for(var elIndex in els) {
    els[elIndex].style.display = 'none';
}

document.getElementsByClassName() отсутствует в IE (старых версиях как минимум), здесь подробнее как обойти: javascript.ru/forum/events/8731-getelementsbyclass...
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
samoilenkoevgeniy
@samoilenkoevgeniy
Lead Full-Stack Web Developer
Подозреваю, что id нужно заменить классом, потому что несколько одинаковых id на одной странице - недопустимо
пишите допустим так:
<li id="loader" ></li>
<li class="sign-up test" style="display:block;">
Содержимое 
</li>


var hidden_div = $('.test');
hidden_div.hide();
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы