Опция выбора Jquery не работает с переключателем и регистром

0

Я пытаюсь создать выбор, если вы можете выбрать цвет для изменения фона. Я хотел сделать это с помощью переключателя и корпуса, но он, похоже, не работает.

Это мой html:

<select id="categorie">
    <option value="1">blue</option>
    <option value="2">red</option>
    <option value="3">green</option>
</select>

и это мой jquery:

$('#categorie').change(function(){

 var val = $(this).val();

switch (val) {
    case 1: $("#categorie").val( 1 );

    $('body').css('background-color','blue')
    break;
    case 2: $("#categorie").val( 2 );
    $('body').css('background-color','red')
    break;
    case 3: $("#categorie").val( 3 );
    $('body').css('background-color','green')
    break;}
});
  • 0
    вы пробовали строковое значение? case "1": например
  • 1
    или var val = +$(this).val(); которые преобразуют действительную числовую строку в число
Теги:
select
switch-statement
background-color

1 ответ

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

Вам нужно использовать parseInt поскольку .val() возвращает значение по умолчанию.

Поэтому измените свой код как

 var val = parseInt($(this).val(), 10);

DEMO

  • 1
    Вы должны всегда указывать базу для parseInt ...
  • 0
    Спасибо, это работает, но работает только на скрипке. Когда я использую его на своем веб-сайте, это не работает.

Ещё вопросы

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