Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Добавить класс для <option> (https://javascript.ru/forum/misc/42598-dobavit-klass-dlya-option.html)

rafaello 02.11.2013 11:18

Добавить класс для <option>
 
Вот на этом образце я установил содранный с интернета скрипт динамического селекта страна - город.
http://learn.javascript.ru/play/iYGQmb
Пожалуйста, подскажите, что надо добавить туда, чтобы в селекте "города" скрипт еще прописывал нужный мне класс в строчке <option>.
В данный момент селект города формируется вот таким образом

<select class="g" id="goroda22" name="goroda">
<option value="">ВЫБЕРИТЕ ГОРОД</option>
<option value="Вена">Вена</option>
<option value="Грац">Грац</option>
</select>

А мне надо вот так

<select class="g" id="goroda22" name="goroda">
<option value="">ВЫБЕРИТЕ ГОРОД</option>
<option value="Вена" class="xx">Вена</option>
<option value="Грац" class="xx">Грац</option>
</select>

Спасибо!

danik.js 02.11.2013 12:45

Можешь объяснить зачем классы? Может можно как-то обойти эту необходимость?

BETEPAH 02.11.2013 12:45

for (var key in optionData || null) {
        var newopt = new Option(optionData[key], key);
        newopt.className = 'xx';
        secondSelect.options[secondSelect.length] = newopt;
      };

http://learn.javascript.ru/play/sFdfeb

З.Ы. но вообще danik.js прав. Если это для css, то можно обойтись и без классов:
.g > option

rafaello 02.11.2013 13:08

Здорово, спасибо!
Класс нужен, чтобы поменять цвет у <option> на черный. Если я прописываю белый у <select>, то и <option> автоматом становились белыми, а теперь я смогу сделать их черными.
На сайте ранее уже был дизайн, белые селекты и черные <option>, и поэтому надо под него подстроиться.

rafaello 02.11.2013 13:15

А ввобще то проблема у меня пошла еще несколько дней назад.
Началось вот отсюда.
Ранее на сайте был установлен красиво оформленный селект, как в примере наверху. Далее встала необходимость сделать динамические селекты. Я, когда подключал динамические селекты, то он убивал дизайн первого.
http://learn.javascript.ru/play/cOiScc

В данный момент верхний селект имеет дизайн, но второй селект не работает динамически, то есть не подставляются города.
Теперь, если подключить скрипт ко второму селекту,
раскоментировать в хедере строчку
<!--<script type='text/javascript' src='script.js'></script>-->
то второй селект заработает, но исчезнет дизайн первого.
Как сделать так, чтобы работал второй и не исчезал дизайн первого?

BETEPAH 02.11.2013 13:45

Цитата:

Сообщение от rafaello
Если я прописываю белый у <select>, то и <option> автоматом становились белыми, а теперь я смогу сделать их черными.

а так пробовали?
Цитата:

Сообщение от BETEPAH
.g > option


danik.js 02.11.2013 13:48

Цитата:

Сообщение от rafaello
Если я прописываю белый у <select>, то и <option> автоматом становились белыми, а теперь я смогу сделать их черными.


А чем не устраивает
option{
    color: black;
}

?

rafaello 02.11.2013 14:15

Код:

А чем не устраивает
option{
    color: black;
}

А ведь и действительно!!!
Даа...! Загадкам наших мозгов можно только удивляться...
Немного подумав... Исправил "наших" на "мой"
Но по любому, все это не без пользы...
А мужик впечатляет, с ярко выраженной эмоцией...
Побрить бы его надо...


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