首页 新闻 赞助 找找看

怎么保持子菜单在页面刷新后依然保持展开状态?

0
悬赏园豆:20 [已解决问题] 解决于 2011-10-09 16:37

在masterpage的.cs文件中控制实现对ul子菜单的收缩,怎么样通过js控制页面刷新后菜单还是展开来的

 

页面:leftMenu.aspx

1 privatestring _dir =string.Empty;
2 publicstring Dir
3 {
4 get
5 {
6 return _dir;
7 }
8 set
9 {
10 _dir = value;
11 }
12 }
13
14 protectedvoid Repeater1_ItemDataBound(object sender, RepeaterItemEventArgs e)
15 {
16 DataRowView dr = e.Item.DataItem as DataRowView;
17 string item_id = dr["ItemFamilyID"].ToString();//companyid ='TEXFACTOR' and
18 string sql ="select * from Tab where companyid ='aa' and ItemFamilyID='"+ item_id +"'";
19 DataSet dsid = child.Query(sql);
20 (e.Item.FindControl("Repeater2") as Repeater).DataSource = dsid;
21 (e.Item.FindControl("Repeater2") as Repeater).DataBind();
22 }
View Code
<script language="javascript">
function fun(id) {
var a = document.getElementById(id);
if (a.style.display =="none") { //我该怎么动态获取子菜单的id,让母版页刷新后,子菜单依然保持展开状态。
a.style.display ="block";
}
else {
a.style.display
="none";
}
}
</script>



<table border='0' width='100%' cellspacing='0' cellpadding='0' class='infoBox_table' style="display:block">
<tbody>
<tr>
<td class='infoBox_td'>
<asp:Repeater ID="Repeater1" runat="server" OnItemDataBound="Repeater1_ItemDataBound">
<ItemTemplate>
<table border='0' width='100%' cellspacing='0' cellpadding='0' onclick="fun('t<%#Eval("ItemFamilyID") %>')"
class='infoBoxContents2_table'>
<tbody>
<tr>
<td class="boxText" style="height: 6px;">
<ul class='categories'>
<li class='bg_list' id="l1"><a href='#'>
<%#Eval("ItemFamilyID")%>
</a></li>
</ul>
</td>
</tr>
</tbody>
</table>
<table border='0' width='100%' cellspacing='0' cellpadding='0' class='infoBox_table' style="display:none"
id
="t<%#Eval("ItemFamilyID") %>" style="display: none;">
<asp:Repeater ID="Repeater2" runat="server">
<ItemTemplate>
<tr>
<td class="boxText" style="height: 6px;">
<ul class='categories'>
<li class='bg_list' id="l1" style="padding-left: 30px; width: 213px;"><%--onclick="Chuan();"--%>
<a style="text-decoration: none;" target="_parent" href="<%=Dir %>default.aspx?id=<%#Eval("ItemCategoryID") %>">
<%#Eval("ItemCategoryID")%>
</a></li>
</ul>
</td>
</tr>
</ItemTemplate>
</asp:Repeater>
</table>
</ItemTemplate>
</asp:Repeater>
</td>
</tr>
</tbody>
</table>

href="<%=Dir %>default.aspx?id=<%#Eval("ItemCategoryID") %>"

左边的这个菜单是在母版页里面
当点击子节点,显示相关数据在右边,同时页面会刷新
刷新后,子菜单收起来了,我需要它还是展开的

青 草 香的主页 青 草 香 | 初学一级 | 园豆:5
提问于:2011-09-15 10:00
< >
分享
最佳答案
0

为什么不用框架页呢,用框架页后,左侧的链接控制右侧的页面,多好啊

收获园豆:20
Devin Mao | 小虾三级 |园豆:596 | 2011-09-15 12:01

用框架,也要嵌套在母版页里面,但是母版页一刷新,整个页面都会跟着刷新的啊

青 草 香 | 园豆:5 (初学一级) | 2011-09-15 12:04

@青 草 香:导航菜单就 没必要用母板页了吧,楼主自己看,也可以用scriptManager 用局部刷新啊

Devin Mao | 园豆:596 (小虾三级) | 2011-09-15 12:06

我用的使用户自定义控件

青 草 香 | 园豆:5 (初学一级) | 2011-09-15 12:08
其他回答(2)
0

自己顶起来

青 草 香 | 园豆:5 (初学一级) | 2011-09-15 11:04
0

楼主怎么解决的啊?

秋刀鱼de滋味 | 园豆:146 (初学一级) | 2018-06-20 11:34
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册