日期:2014-05-16  浏览次数:20306 次

恳请高手的帮助:asp javascript 由一个下拉菜单的值决定另一个下拉菜单的显示或隐藏
<head>
<SCRIPT language="JavaScript">
function displaytype(displayvalue)
   {
if (displayvalue == '0')
  {
            //alert(displayvalue); //获取a菜单的值正常
            这个地方该怎么写?
   }
else
  {
            这个地方该怎么写?
           }

    }
</head>
<body>
<FORM method="POST" name="myform" action="">
<SELECT name="a" onChange="displaytype(document.myform.a.options[document.myform.a.selectedIndex].value)">
<OPTION value="0" name="a" selected>隐藏b框</OPTION>
<OPTION value="1" name="a" selected>显示b框</OPTION>
</SELECT>

<SELECT name="b">
<OPTION >xxxxxxx</OPTION>
</SELECT>
</form>
</body>

1,目的:asp javascript 由一个下拉菜单的值决定另一个下拉菜单的显示或隐藏
2,要求:在不刷新页面的前提下,动态显示或隐藏。
3,我尝试过,在b菜单前后加上<div id="displaytype"></div>,在js代码里加入:document.getElementById(displaytype).style.display = "none";但实际上,我的做法不能实现。
4,从原理上说,不刷新,动态的隐藏似乎不可能。假如真的不可能,那么如何在js里设置b框的值无法编辑?


恳请高手的帮助。万分感谢!!!!!!!
javascript asp

------解决方案--------------------
4,从原理上说,不刷新,动态的隐藏似乎不可能。
你的原理错了
document.getElementById(displaytype).style.display = "none"; 这句代码正确,但是没生效,检查displaytype的值是否正确,并检查document.getElementById(displaytype)是否为非null
------解决方案--------------------

<SCRIPT   >
function displaytype(el){
  el.form.b.style.display=el.value==1?'inline':'none'
}
 </SCRIPT>
<body>
<FORM method="POST" name="myform" action="">
<SELECT name="a" onChange="displaytype(this)">
<OPTION value="0" name="a" selected>隐藏b框</OPTION>