jQuery изменить цвет фона, если

0

Мне было интересно, как изменить цвет фона с помощью селекторов. Это мой код:

<div id="example">
    <select id="worked">
        <option id="green">Green</option>
        <option id="orange">orange</option>
    </select>
</div>
<script>
$(document).ready(function(){ 

    var n = $("select option:selected")

    if (n == "green") {
        $("body").css("background", "green");
    } 
    else {
        $("body").css("background", "orange");
    }

});
</script>

Поэтому, если я выбираю зеленый цвет, он не будет показывать ни оранжевый. Есть идеи?

  • 0
    Разве вы не хотите связать это через событие изменения элемента select?
  • 0
    Почему бы не получить значение элемента select, var color = $('#worked').val(); - нет необходимости искать вариант, который выбран таким образом.
Теги:

2 ответа

1
Лучший ответ

Эта:

var n = $("select option:selected")

возвращает элемент, а не значение, которое будет:

var n = $("select option:selected").val();

который также может быть выполнен как:

var n = $("select").val();

поскольку значение select будет таким же, как выбранный параметр,
но вы, вероятно, хотите подключиться к событию изменения выбора, например:

$("select").on('change', function() {
    $("body").css("background", this.value);
});

FIDDLE

РЕДАКТИРОВАТЬ:

с условием установки фона оранжевым для чего-либо, кроме зеленого:

$("select").on('change', function() {
    if (this.value == 'green') {
        $("body").css("background", 'green');
    }else{
        $("body").css("background", 'orange');
    }
});

или:

$("select").on('change', function() {
    $("body").css("background", this.value == 'green'?'green':'orange');
});
  • 0
    Работает! Есть ли способ с заявлением IF?
  • 0
    Спасибо, но вы можете сделать это, как с выбрать идентификатор? Это кажется мне более понятным, потому что я хотел бы изменить выбор.
Показать ещё 2 комментария
0

использование

$('#worked').change(function() { /* triggered when select box changed. */ });

Рабочий пример

Ещё вопросы

Сообщество Overcoder
Наверх
Меню