我想用 js 选择选项,但我的代码返回 undifine ?错误在哪里
const aaa = document.querySelector("#test")
const rng = aaa.addEventListener("change",(e)=>{
return e.target.selectedOptions[e.target.selectedIndex].text
})
console.log(rng)
<select id="test">
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
</select>
首先,您将 addEventListener 分配给您的 const rng
,它正在返回undefined
,这就是您未定义的原因,回调函数将不会返回到此上下文
其次,selectedOptions
在这里,对于单个选择输入,将只有一个项目表示为一个对象,您可以在其中通过 key 获取元素本身0
,您不应该尝试通过选项列表中的实际索引访问它
最后,得到这个元素的innerText
前任:
const selectElement = document.querySelector("#test")
selectElement.addEventListener("change",(e)=>{
console.log(e.target.selectedOptions[0].innerText)
})
<select id="test">
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
</select>
或者您可以使用querySelector
以下方法获取元素:
const selectElement = document.querySelector("#test")
selectElement.addEventListener("change",(e)=>{
console.log(selectElement.querySelector("option:checked").innerText)
})
<select id="test">
<option value="a">a</option>
<option value="b">b</option>
<option value="c">c</option>
</select>
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句