Задать вопрос
@artekha

Как предотвратить появление списка options при клике на select?

Нужно отключить появление списка option-ов при клике на select. Я делаю кастомный дропдаун, но нужно именно через select, и именно на нативном js. Я решил перерисовывать option-ы в отдельный список, и стилизовать уже его, показывая при клике на select именно кастомный список, а не стандартный с options. Как убрать появление options?
  • Вопрос задан
  • 273 просмотра
Подписаться 1 Оценить 5 комментариев
Решения вопроса 1
lazalu68
@lazalu68
Salmon
Например используйте такой код:

'use strict';

const selects = document.querySelectorAll('select');

selects.forEach((item, i, selects) => {
  item.addEventListener('mousedown', dropDown);
});

function dropDown(e) {
  e.preventDefault();
  let list = this.closest('.select-wrap').querySelector('.select-list');
  if (list.classList.contains('hide')) {
    list.classList.remove('hide');
  } else {
    list.classList.add('hide');
  }

}


Просто listener вешаете на mousedown и дополнительно в нем вызываете .preventDefault()
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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