ASP.NET显示层的问题(很奇怪)
下面这段代码是写在ASP.NET页面里控制层显示的
<script language= "javascript " type= "text/javascript ">
<!--
function disp(i)
{
for(j=1;j <3;j++)
{
if(j==i)
{
document.getElementById( "Div "+j).style.visibility = "visible ";
}
else
{
document.getElementById( "Div "+j).style.visibility = "hidden ";
}
}
}
-->
</script>
<style type= "text/css ">
<!--
#Div1 {
position:absolute;
z-index:1;
visibility: visible;
}
#Div2 {
position:absolute;
z-index:2;
visibility: hidden;
}
-->
</style>
<body>
<form id= "form1 " runat= "server ">
<table>
<tr>
<td>
<a href= "# " onmouseover= "disp( '1 ') "> a </a>
<a href= "# " onmouseover= "disp( '2 ') "> b </a>
</td>
</tr>
<tr>
<td>
<div id= "div1 ">
公告栏层结束
</div>
<div id= "div2 ">
fangchang层结束
</div>
</td>
</tr>
</table>
</form>
</body>
正常的应该是运行页面只显示“公告栏层结束”,指向“b”在同位置显示“fangchang层结束”,“公告栏层结束”隐藏。
可现在运行后在页面两个层的内容都显示,“公告栏层结束”在上,“fangchang层结束”在下。鼠标指向“a”时,“公告栏层结束”显示,“fangchang层结束”消失。指向“b”是相反,但“fangchang层结束”在下面与“公告栏层结束”不在同一个位置。很奇怪的是这段代码写在html文件里就是是正常的。实在是不懂了。
另外再问:如果页面还有几个表格里要实现显示不同层,控制语句如何写?
代码长了,您受累。谢谢。菜鸟分少,见谅。
[解决办法]
visibility: visible;
====================
显示和隐藏用
display: none 隐藏
脚本控制时这样写
if(j==i)
{
document.getElementById( "Div "+j).style.display = " ";
}
else
{
document.getElementById( "Div "+j).style.display = "none ";
}