javascript - 单选按钮 : weird selection behaviour

标签 javascript html

我已经摸索这个问题一个小时了,我不明白为什么单选按钮中会出现这种奇怪的行为。以下是我的代码:

<label>Language
  <input type="radio" id="de" value="de" onclick="switchRadioButtons(this);" >de
  <input type="radio" id="en" value="en" onclick="switchRadioButtons(this);" >en
  <input type="radio" id="other" value="other" onclick="switchRadioButtons(this);" >other
  <input type="text" id="language" value="" /><br />
</label>

<script>
  function switchRadioButtons(element) {
    console.log(element.value);  
</script>

因此,在我看来,每当我单击值或按钮本身时,单选按钮的值都应该写入控制台。这对于按钮本身来说是正确的,但是如果我单击按钮之外的标签/描述,它总是会打印“de”(第一项),无论我做了什么(我也尝试过“switchRadioButtons(document.getElementById( '其他'));”没有效果)。

任何人都可以向我解释为什么会发生这种情况并可能提供解决方案吗?

最佳答案

您的所有输入都位于同一个标签内!如果你点击它,它将触发第一个元素(“de”)。它不知道您想要触发其他事件之一。

您需要为每个元素设置一个单独的标签。

关于javascript - 单选按钮 : weird selection behaviour,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17838455/

相关文章:

javascript - Node.js Serialport 无法在 SerialPort.list 函数之外传递变量

javascript - 扩展指令中无法识别某些标签

javascript - Angular : HTML5 style URL is rendering with no stylesheet

javascript - 如何更改鼠标悬停时下拉选项的背景颜色?

javascript - 当我将图像上传到 firebase 存储并检索下载 url 并显示在 img 标记中但它显示多次时

javascript - React.js - 无法在表中显示数组对象

javascript - 如何在 JavaScript 的第二行用省略号分隔文本?

html - "Transition"不转换 ul 元素

javascript - FileReader readAsBinaryString() 到图像 DOM 元素

javascript - 创建复杂的表结构