隐藏单选按钮onclick javascript

时间:2010-07-08 00:04:07

标签: javascript dom dynamic

我在点击它时试图隐藏单选按钮值。如果以非动态的方式,我可以这样做:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
 <title>Untitled</title>
<script language="JavaScript">
<!--  
function showDiv( id ) { 
    document.all.textBox01.style.visibility = 'hidden'; 
    document.all.textBox02.style.visibility = 'hidden'; 
    document.all.textBox01.value = ''; 
    document.all.textBox02.value = ''; 
    document.all[ id ].style.visibility = 'visible'; 
    document.all[ id ].focus(); 
}
    -->
</script> 
</head>

<body>

Option 1: 
<input type=radio name=radioBtn onClick="showDiv( 'textBox01' );"> 
<div id=textBox01 style="visibility:hidden">test2</div> 


Option 2: 
<input type=radio name=radioBtn onClick="showDiv( 'textBox02' );"> 
<div id=textBox02 style="visibility:hidden">test</div> 




</body>
</html>

我想以动态的方式做到这一点,但我的大脑停滞不前,任何提示都非常感激:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
 <title>Untitled</title>
<script language="JavaScript">
<!--  
function change(rad)
 {

  for(var i = 1; i <= 5; ++i)
  {
   if(i <= rad.value)
   { document.getElementById("radio" + i).style.visibility = "hidden";
   }else
   { document.getElementById("radio" + i).style.value = "";
   }
  }
 }

    -->
</script> 
</head>

<body>

Option 1: 
<input type=radio name=radioBtn onClick="change(this)"> 
<div id=radio1 style="visibility:hidden">test2</div> 


Option 2: 
<input type=radio name=radioBtn onClick="change(this)"> 
<div id=radio2 style="visibility:hidden">test</div> 




</body>
</html>

2 个答案:

答案 0 :(得分:0)

使用

function change(rad)
 {
 var elem;
  for(var i = 1; i <= 5; ++i)
  {
   elem = document.getElementById("radio" + i);
   if(i != parseInt(rad.value))
   { if(elem != null) elem.style.visibility = "hidden";
   }else
   { if(elem != null) elem.style.visibility = "visible";
   }
  }
 }

但不要忘记给单选按钮提供数值

答案 1 :(得分:0)

我想你并不是说:

if (i <= rad.value)

提供的是rad.value?