js document.getElementByID("aa")的位置

我们在做项目时,经常会碰到要用js函数去获取点击radio的值,里面可能少不了要用到document.getElementByID("")语句,那么这条语句的位置有什么限制没有呢?答案是肯定的,下面请看例子:
1。定义三个radio
<td colspan="3" align="center">
        <input type="radio" runat="server" id="rblReturnType1" name="Tradio" value="1" onclick="readio_onclick(this)" /> 返房  
    <input type="radio" runat="server" id="rblReturnType2" name="Tradio" value="2" onclick="readio_onclick(this)" /> 返钱
    <input type="radio" runat="server" id="rblReturnType3" name="Tradio" value="3" onclick="readio_onclick(this)" /> 返房换钱  
    </td>
2.js函数

<script language="javascript" type="text/javascript">
function readio_onclick(val) {

    var txvalue=document.getElementById("TxradioValue");   
    var obj=document.getElementsByName("Tradio");
    var trMoney=document.getElementById("trMoney");
    for(var i=0;i<obj.length;i++)
    {
        if(obj[i].checked && obj[i].type=="radio"){
            txvalue.value=obj[i].value;           
           
            if(obj[i].value=="3"){

            //document.getElementById("trMoney").style.display="";
            trMoney.style.display="";
            }else{            

            //document.getElementById("trMoney").style.display="none";
            trMoney.style.display="none";
            }
        }
    }
}
</script>

上面的函数在for循环中如果采用红色字体的语句,则不会达到你想要的效果,但换成蓝色字体的语句后就可以了。但是如果红色字体语句不是在for循环中而是在if()中则可以,所以样成良好的习惯,将要获取的对象都先在最前面写完,然后再去操作对象,这样会减少出错。
posted @ 2008-02-16 23:32  ZYB  阅读(4946)  评论(0编辑  收藏  举报