在JavaScript中,<input type="radio">
元素用于创建单选按钮。单选按钮通常用于在一组选项中选择一个选项。每个单选按钮都属于一个组,通过相同的 name
属性来标识。
<label>
元素提高用户体验。以下是一个简单的示例,展示如何使用JavaScript获取被选中的单选按钮的值:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Radio Button Example</title>
</head>
<body>
<form id="myForm">
<input type="radio" name="choice" value="option1"> Option 1<br>
<input type="radio" name="choice" value="option2"> Option 2<br>
<input type="radio" name="choice" value="option3"> Option 3<br>
<button type="button" onclick="getSelectedRadio()">Get Selected Radio</button>
</form>
<script>
function getSelectedRadio() {
const radios = document.getElementsByName('choice');
let selectedValue = null;
for (let i = 0; i < radios.length; i++) {
if (radios[i].checked) {
selectedValue = radios[i].value;
break;
}
}
alert('Selected value: ' + selectedValue);
}
</script>
</body>
</html>
原因:可能是因为没有正确遍历所有的单选按钮,或者没有检查 checked
属性。
解决方法:确保使用 getElementsByName
获取所有同名的单选按钮,并通过循环检查每个按钮的 checked
属性。
原因:可能是HTML中没有设置 checked
属性,或者在JavaScript中没有正确处理初始状态。
解决方法:在HTML中为默认选中的单选按钮添加 checked
属性,或者在JavaScript初始化时设置默认选中项。
<input type="radio" name="choice" value="option1" checked> Option 1
或者在JavaScript中:
document.addEventListener('DOMContentLoaded', function() {
const defaultRadio = document.querySelector('input[name="choice"][value="option1"]');
if (defaultRadio) {
defaultRadio.checked = true;
}
});
通过以上方法,可以有效解决在JavaScript中获取被选中单选按钮时可能遇到的问题。
领取专属 10元无门槛券
手把手带您无忧上云