Показать сообщение отдельно
  #1 (permalink)  
Старый 09.09.2015, 18:35
Кандидат Javascript-наук
Отправить личное сообщение для фонарик Посмотреть профиль Найти все сообщения от фонарик
 
Регистрация: 23.02.2013
Сообщений: 127

Массив, имена
Доброго времени суток, пожалуйста, помогите решить проблему. При смене в селекте запускается функция write_data_to_div, которая исходя из выбранного value определяет имя одного из 3х обозначенных массивов. Но определив имя массива, получается что это не массив а просто строка с идентичным названием массива.

Иными словами, нужно чтобы при выборе в селекте отразилось значение [1] соответствующего массива. Можно в массиве arr_names обозначить имена без ковычек и тогда все работает, но вся суть именно в том, что значения должны быть в ковычках, т.е чтобы это был простой текст.
<select class="slct_class" onchange="write_data_to_div(this.value)">    
    <option class="opt_class" value="0"></option>
    <option class="opt_class" value="1">Ресурсы</option>
    <option class="opt_class" value="2">Овощи</option>
    <option class="opt_class" value="3">Фрукты</option>
</select>
    
<div id='block' style="width:100px; height:100px;  border:1px solid blue"></div>

<script>
var resource = ['wood', 'metall', 'iron ore']
var vegetables = ['Картофель', 'Морковь', 'Капуста']
var fruits = ['Яблоки', 'Лимоны', 'Апельсины']
var arr_names = ['', 'resource', 'vegetables', 'fruits']
function write_data_to_div(e){
document.getElementById('block').innerHTML = arr_names[e][1]
}
</script>
Ответить с цитированием