Есть раскрывающийся список:
<select id='dropDown' onchange='somethingDoer(this);'>
<option value='0' arrayType='companies'>ООО "Рога и Копыта"</option>
<option value='1' arrayType='companies'>ООО "Ромашка"</option>
<option value='2' arrayType='companies'>ЗАО "Вектор"</option>
<option value='0' arrayType='personas'>Иванов И.И.</option>
<option value='1' arrayType='personas'>Петров П.П.</option>
<option value='2' arrayType='personas'>Сидоров С.С.</option>
</select>
Список составлен из двух массивов данных "companies" и "personas". Мне хотелось бы, чтобы при выборе опции из выпадающего списка в функцию somethingDoer(this); передавалось не только значение value 0-2, т.е. порядковый номер записи внутри массива, но и название самого массива, чтобы функция смогла обратиться к нему напрямую. Как это реализовать, либо если конструкция некорректная, как нужно ее переписать, чтобы получить желаемый результат?
Вы наверно хотите что-то подобное:
function somethingDoer(dropDown) {
var option = dropDown.options[dropDown.selectedIndex];
console.log(option.value, option.getAttribute('arrayType'));
}
<select id='dropDown' onchange="somethingDoer(this)">
<option value='0' arrayType='companies'>ООО "Рога и Копыта"</option>
<option value='1' arrayType='companies'>ООО "Ромашка"</option>
<option value='2' arrayType='companies'>ЗАО "Вектор"</option>
<option value='0' arrayType='personas'>Иванов И.И.</option>
<option value='1' arrayType='personas'>Петров П.П.</option>
<option value='2' arrayType='personas'>Сидоров С.С.</option>
</select>
function somethingDoer(e){
console.log(e.value +':'+ e.options[e.selectedIndex].getAttribute("arrayType"));
}
<select id='dropDown' onchange='somethingDoer(this);'>
<option value='0' arrayType='companies'>ООО "Рога и Копыта"</option>
<option value='1' arrayType='companies'>ООО "Ромашка"</option>
<option value='2' arrayType='companies'>ЗАО "Вектор"</option>
<option value='0' arrayType='personas'>Иванов И.И.</option>
<option value='1' arrayType='personas'>Петров П.П.</option>
<option value='2' arrayType='personas'>Сидоров С.С.</option>
</select>
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Как сделать данную функцию подсчёта слайдов универсальной(если на странице будут несколько слайдеров), чтобы просто пользоваться меняя...
Здравствуйтею Хотел в приложении сделать добавление человека и вывод его в listview, однако происходит краш вот тут :