你好!
是的,<td><a href=# onclick=ShowLayer(0);><%=rs("menu_name")%>菜单一</a></td>这个红色字的通过ShowLayer传回的index值我没有循环,这个地方我不太清楚怎么做循环,哈哈,因为上面那个js我是用你得写的。但是这个与下面的子菜单有关吗?我显示的子菜单的个数有三个啊,只是不能显示其他另外两个子菜单的名称。如果主菜单这里也需要做循环的话,那么请教yms123,应该怎么写?非常感谢!
当然有关系了,如果这里的值不循环就是再怎么改代码也只能显示一个。
<%
Dim divNum
divNum=0
if not rs.eof then
rs.movefirst
Do Until rs.EOF
strSonMenu = rs("menu_id")
%>
<tr>
<td><a href=# onclick=ShowLayer(<%=divNum%>);><%=rs("menu_name")%>菜单一</a></td>
</tr>
<%
response.write strSonMenu
if rs1.state=1 then rs1.close
rs1.Open "select * From menu_info Where Parent_id='" & strSonMenu & "'",cn,1,1
response.write rs1.recordcount
IF Not rs1.EOF Then
Do Until rs1.EOF
%>
<tr>
<td>
<div style=display:none; id=Layer><img src="child.gif"><%=rs1("menu_name")%></div>
</td>
</tr>
<% rs1.MoveNext
Loop
End IF
IF rs1.State=1 Then rs1.Close
divNum=divNum+1
rs.MoveNext
Loop
end if%>
加入红字的代码再试。
把网页执行后的原代码(也就是浏览器里,查看源文件的原代码)贴出来看看。
yms123:
你好!
怎么在浏览器里面看的源代码,无论是页面出现一个子菜单还是两个子菜单,里面显示的怎么都是三个子菜单?
<html>
<head>
<title>无标题文档</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<script language=javascript>
function ShowLayer(index)
{
if(this.Layer(index).style.display=="none")
{
this.Layer(index).style.display="block";
}
else
{
this.Layer(index).style.display="none";
}
}
</script>
</head>
<table border="1" style="border-collapse: collapse" width="60%" id="table1">
<tr>
<td><a href=# onclick=ShowLayer(0);>用户管理菜单一</a></td>
</tr>
23
<tr>
<td>
<div style=display:none; id=Layer><img src="child.gif">货币汇率设置</div>
</td>
</tr>
<tr>
<td>
<div style=display:none; id=Layer><img src="child.gif">票据类型设置</div>
</td>
</tr>
<tr>
<td>
<div style=display:none; id=Layer><img src="child.gif">上传图片文件</div>
</td>
</tr>
<tr>
<td><a href=# onclick=ShowLayer(1);>查看单据资料菜单一</a></td>
</tr>
60
</table>
</html>
这样就可以了,而且不要那个红色部分的循环<td><a href=# onclick=ShowLayer(0);也行。不过这样就没有那样看起来方便,哈哈!什么问题呢?
这样就可以了,而且不要那个红色部分的循环<td><a href=# onclick=ShowLayer(0);也行。不过这样就没有那样看起来方便,哈哈!什么问题呢?
那样循环子菜单都循环写到一起了所以错误。
那其实也是和从数据库里面拿取数据是一样的啊?更何况在浏览器里面的源代码也是正确的,改后的代码也同样是循环,只不过改成由代码来打印出来的方式。所以还是有些费解。不知道你有没有不用代码输出的方式能够解决(就想我们12楼的那种方式)谢谢!
[此贴子已经被作者于2006-5-27 6:41:43编辑过]