【发布时间】:2011-12-08 14:08:15
【问题描述】:
我正在动态创建 3 个下拉菜单/选择框,并通过 .innerHTML 将它们插入 DOM。
在我用 Javascript 创建下拉列表之前,我不知道它们的 ID。 为了知道创建了哪些下拉菜单,我创建了一个数组,其中存储了我创建的下拉菜单的 ID。
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>";
}
现在我有一个包含 3 个 id 的数组:
- 下拉菜单1
- 下拉菜单2
- 下拉菜单3
我想用 Javascript(不使用 jQuery 或其他框架)完成的是循环这 3 个下拉菜单并为它们附加一个更改事件侦听器。
当用户在其中一个下拉菜单中更改选择时,我想调用一个名为 updatePrice 的函数。
我有点卡在动态添加事件监听器上。
【问题讨论】:
-
下拉=选择?请包含您用于创建这些“下拉菜单”的代码
标签: javascript dom-events