我想用 js 选择选项吗?

巴曼-卡尼

我想用 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] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章