Я создаю 3 выпадающих / выбирающих поля на лету и вставляю их в DOM через .innerHTML.
Я не знаю идентификаторов выпадающих, пока я не создал их в javascript.Чтобы узнать, какие раскрывающиеся списки были созданы, я создаю массив, в котором хранятся идентификаторы созданных раскрывающихся списков.
for(var i=0; i<course.books.length; i++)
{
output+="<label for='book_"+course.books[i].id+"'>"+ course.books[i].name +"</label>";
output+="<select id='variant"+course.books[i].id+"' name='book_"+course.books[i].id+"'>";
output+="<option value='-'>-- Select one --</option>";
for(var j=0; j<course.books[i].options.length; j++)
{
output+="<option value='"+course.books[i].options[j].id+"'>"+course.books[i].options[j].name+"</option>";
}
output+="</select>";
}
Теперь у меня есть массив с тремя идентификаторами, например:
- dropdown1
- dropdown2
- dropdown3
Что я хочу сделать с помощью javascript (без использования jquery или другого фреймворка), это зациклить эти 3 раскрывающихся списка и присоединитьпрослушиватель событий изменения к ним.
Когда пользователь меняет выбор в одном из этих выпадающих меню, я хочу вызвать функцию, например, «updatePrice».
Я немного застрял на динамическом добавлении слушателей событий здесь, любая помощь очень ценится!