当前位置 博文首页 > Traveler∝゛过客的博客:option设置onclick无效
今天写一个小案例:获取select选择的值,发现设置onclick 不起作用
具体看下代码:
<script>
window.onload = function() {
//获取select
let select = document.getElementsByTagName("select")[0];
//获取子节点
let options = select[0].children;
for (let i = 0; i < options.length;) {
//为每个子节点设置函数
options.onclick = function () {
alert(this.innerHTML);
}
}
}
</script>
<select>
<option value ="1">option1</option>
<option value ="2">option2</option>
<option value ="3">option3</option>
<option value ="4">option4</option>
</select>
以上代码,选择option 时并没有弹出内容
首先看select 的属性 和 事件:
option 是不能支持onclick ,但select有onchange和selectedIndex 属性可以达到相同的目的
具体看代码:
<script>
window.onload = function() {
//获取select
let select = document.getElementsByTagName("select")[0];
//获取子节点
let options = select.children;//获取所有子节点--option
select.onchange = function () {
let index = select.selectedIndex;//获取选择的option对应的索引;
alert(options[index].innerHTML);
};
}
</script>
<select>
<option value ="1">option1</option>
<option value ="2">option2</option>
<option value ="3">option3</option>
<option value ="4">option4</option>
</select>
问题解决: