<html>
<head>
<script LANGUAGE="JavaScript">
function check(){
var radio=document.f.payMoney;
alert(radio.length);    
for (var i=0; i<radio.length; i++) {
if (radio[i].checked) {
return true;
}
}
alert("请选择或输入金额");
return false;   
   }
</script>
</head>
<body>
<form name="f">
<input type='radio' id='payMoney' value='100' name='payMoney' />
<input type='radio' id='payMoney' value='20' name='payMoney' />
<input type='radio' id='payMoney' value='30' name='payMoney' />
<input type='radio' id='payMoney' value='50' name='payMoney' />
<input type='button' onclick="return  check()" />
<form>
</body>
</html
我用var radio=document.getElementById('payMoney');为什么不行,var radio=document.f.payMoney;就能运行正确,请高手指点!!!

解决方案 »

  1.   

    document.getElementById只能返回 一个指定id的元素,可以使用document.getElementsByName("payMoney")
      

  2.   

    在符合标准的网页中一个页面每个元素的id不能相同,如果要设置相同的,可以设置name或其它属性
      

  3.   


    var inputs = document.getElementsByTagName("input");
        var radios = [];
        for(var i=0;i<inputs.length;i++){
           if(inputs[i].id=="payMoney") 
    radios[radios.length] = inputs[i];   
        }