javascript单选按钮值为null

javascript radio button value get null

本文关键字:null 单选按钮 javascript      更新时间:2023-09-26

在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>

使用querySelectorAll:

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

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

示例