如何使用纯javascript找到单选按钮的值?

时间:2011-11-02 19:42:56

标签: javascript html

<input checked=checked type="radio" name="colors" value="red" />Red
<input type="radio" name="colors" value="green" />Green
<input type="radio" name="colors" value="blue" />Blue

鉴于上述情况,我设置了默认选择的红色按钮(所以我给它checked=checked属性。这样,如果我在该输入元素上调用.checked,它将始终即使选择了其他选项,也返回true。

在简单的javascript(没有jQuery)中,如何获得实际选择的选项?

5 个答案:

答案 0 :(得分:9)

试试这个:

var options = document.getElementsByName("colors");
if (options) {
    for (var i = 0; i < options.length; i++) {
        if (options[i].checked){
             alert(options[i].value);
        }
    }
}

使用jQuery会更容易如此 ......只是说。

答案 1 :(得分:1)

我相信你会在document.all集合中找到它:

var selectedColor = document.all["colors"];

答案 2 :(得分:0)

嗯,他们都有相同的名字。因此,至少必须选择其中一个。给他们不同的ID,然后再试一次。

答案 3 :(得分:0)

你可以这样试试......

这是示例

<form name="frmRadio" method="post">
<input name="choice" value="1" type="radio" />1 
<input name="choice" value="2" type="radio" />2 
<input name="choice" value="3" type="radio" />3 
<input name="choice" value="4" type="radio" />4
</form>

获取所选值的函数

<script language="JavaScript">

    function getRadioValue() {
        for (index=0; index < document.frmRadio.choice.length; index++) {
            if (document.frmRadio.choice[index].checked) {
                var radioValue = document.frmRadio.choice[index].value;
                break;
            }
        }
    }

</script>

答案 4 :(得分:0)

普通的javasript:

document.querySelector('input[name=colors]:checked').value;