Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Не верно работает onchange для select (https://javascript.ru/forum/misc/9634-ne-verno-rabotaet-onchange-dlya-select.html)

Kenshi24 28.05.2010 16:20

Не верно работает onchange для select
 
При попытке получить значение выбранной option и вставить результат работы функции в элемент 'text', он всегда будет показывать "выбрано 3" так, как переменная option почему-то имеет все 3 возможных значения одновременно, и срабатывают все 3 if блока. Как это
исправить?

// Функция
function change(){
   var option = document.getElementById('select').value;

   if (option = "option1")
   {document.getElementById('text').innerHTML = "выбрано 1";}

   if (option = "option2")
   {document.getElementById('text').innerHTML = "выбрано 2";}

   if (option = "option3")
  {document.getElementById('text').innerHTML = "выбрано 3";}
}

// Отсюда выбираем
<select id="select" onchange="change();"><option value="option1">пункт  1</option><option value="option2">пункт 2</option><option value="option3">пункт 3</option></select>

//Сюда вставляем
<span id="text"></span>

Kolyaj 28.05.2010 16:27

Вы присваиваете, а не сравниваете.

exec 28.05.2010 16:29

selectedIndex

Kenshi24 28.05.2010 16:31

То есть здесь неверно?
if (option = "option1")

Kenshi24 28.05.2010 16:33

С SelectedIndex тоже самое, что и с Value

micscr 28.05.2010 16:33

Оператор сравнения на равенство:
==

Kenshi24 28.05.2010 16:36

Все, разобрался, спасибо.


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