frameset网页退出按钮

本文介绍了一个使用frameset布局时遇到的退出按钮问题及其解决方案。当退出按钮仅位于一个子框架中时,直接跳转会导致部分页面无法更新。文章提供了解决方案,包括使用JavaScript改变父窗口的location以及在服务器端清除会话。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

如果页面用frameset做框架,由top,left,main三个界面组成,退出按钮只能放在其中一个页面上面,这时做退出按钮如果单纯的<a href="login.htm">退出</a>或者在程序里面Response.Redict("login.aspx");Session.Clear();这个样子就会造成以下结果:


图片

只有一半的页面跳出去了。

解决办法:如果使用的是静态<a>标签,可以写:

<a target="_parent"href="#">退出</a>退出定位到父窗口即可!

如果是动态的通过后台代码的可以写:

Session.Clear();

Response.Write("<script type='text/javascript'>window.parent.location.href='login.aspx';</script>");

Response.End();

 

<script type="text/javascript"> function visionTreeHandler() { var node = webFXTreeHandler.selected; //如果是文件夹节点,则跳过 if (!node.folder) { var path = getFullPathForNode(node); parent.frames['visionMain'].location = "visionView.jsp?svgfile=" + path; } } function onLoadedFun(){ parent.frames['visionMain'].location = "visionView.jsp?svgfile=主接线图"; } function exitLeftFrame() { // 获取父框架集 var frameset = parent.document.getElementsByTagName('frameset')[0]; // 隐藏左侧框架 frameset.cols = "0,*"; // 将左侧框架的宽度设置为0 } </script><body onload="javascript:onLoadedFun()" style="overflow:hidden; background-color:white;"> <div class="left-header"> <span>画面列表</span> <!-- 左侧标题,可自定义 --> <button class="close-btn" onclick="exitLeftFrame()">×</button> <!-- 右上角关闭按钮 --> </div> <%--<button onclick="exitLeftFrame()">退出</button>--%> <div class="divScroll"> <script type="text/javascript"> //"监视页面" var tree = new VisionTree("画面文件", "${pageContext.request.contextPath}", "${pageContext.request.contextPath}/scripts/xtree", "javascript:visionTreeHandler();"); </script> </div> </body><frameset name="visionFrame" cols="10%,*" framespacing="1" border="3px"> <frame src="visionLeft.jsp" id="visionLeft" name="visionLeft" bordercolor="#0066FF" frameborder="1" marginwidth="0" marginheight="0"> <frame src="about:blank" id="visionMain" name="visionMain" marginheight="0" > <noframes> <body>对不起!您的浏览器不支持框架!</body> </noframes> </frameset> 左边导航栏目录,右边展示相应的svg图像,左边导航栏完全重叠在svg图像上面,当导航栏最小化,svg图像显示完全
最新发布
05-31
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值