javascript单选按钮值获取null

时间:2013-07-19 21:31:28

标签: javascript

在javascript中,我有指针获取水果的名称。但警报始终显示为null。 我检查了我的逻辑,但无法找到问题。有什么建议?谢谢!

 <!DOCTYPE html>
    <html>
    <head>
        <title>My Fruit</title>
        <script type="text/javascript">
        function checkFruit(){
            var fruit_radio_pointers = document.querySelector('[name="fruit"]'); 
            var which_fruit = null;
            for(var i=0; i<fruit_radio_pointers.length; i++){
                if(fruit_radio_pointers[i].checked){
                    which_fruit = fruit_radio_pointers[i].value;  
                    break;            
                }    
            }
            alert(which_fruit);
        }

        //document.getElementById("my_btn").addEventListener("click", checkFruit, false);
        </script>
    </head>
    <body>
    <p>
        <input name="fruit" type="radio" value="apple" /> Apple<br />
        <input name="fruit" type="radio" value="cherry" /> Cherry
    </p>
    <p>
       <button id="my_btn" onclick="checkFruit()" >Which Fruit?</button>

    </p>
    </body>
    </html>

1 个答案:

答案 0 :(得分:4)

使用querySelectorAll

var fruit_radio_pointers = document.querySelectorAll('[name="fruit"]'); 

querySelector仅返回找到的第一个匹配项(不是数组) 它等于document.querySelectorAll('[name="fruit"]')[0] 正如您可能已经想到的那样,querySelectorAll将所有找到的匹配作为数组返回。

Example