网页跳转如何不留历史地址?
使用框架结构,left 和 right框架在左框架点击某功能后再右面显示页面;
使用 Response.Write("<script>parent.Right.location.href='XXX.aspx',window.status ='XX';</script>")
使用了以后发现,地址栏是会保留此地址及aspx文件名字,
如何才能不保留呢? --------------------编程问答-------------------- 什么意思呢
用了框架地址栏应该是不变的啊
试下下面的
--------------------编程问答-------------------- 清除cookie? --------------------编程问答-------------------- Response.Cache.SetNoStore();
this.Page.RegisterStartupScript("click", "<script>window.parent.frames(1).location='welcome.aspx'</script>");
或者
Response.Write("<script>window.parent.frames(1).location='welcome.aspx'</script>");
Response.Write("<script>window.parent.frames(1).location='welcome.aspx'</script>");
--------------------编程问答--------------------
我用的是VS2008 vb.net
虽然地址栏地址是不变得,但并不代表不记录代码跳转的地址。 --------------------编程问答--------------------
试了一下,没变化 --------------------编程问答--------------------
搂主说的是历史记录,不是地址栏地址 --------------------编程问答--------------------
框架结构地址栏肯定是不变的,但在里面运行了Response.Write,在历史记录里有地址 --------------------编程问答-------------------- 或者说
用什么跳转语句,能在框架结构中跳转 并 能不保留Cache地址, --------------------编程问答-------------------- Response.Write(" <script>parent.Right.location.replace('XXX.aspx'),window.status ='XX'; </script>")
使用replace可以不保留历史痕迹 --------------------编程问答-------------------- 1.htm
1.htm<br/>
<input type="button" value="更改url" onclick="window.location.replace('2.htm')" />
2.htm
2.htm<br/>
<input type="button" value="更改url" onclick="window.location.replace('1.htm')" />
这样就不会有历史记录了 --------------------编程问答--------------------
replace 使用在框架中会出错
--------------------编程问答-------------------- 说错了,在框架中用replace没反应
--------------------编程问答-------------------- d --------------------编程问答-------------------- mark --------------------编程问答--------------------
依然会有 --------------------编程问答--------------------
依然会有 --------------------编程问答-------------------- 有没有高手啊,急等 --------------------编程问答--------------------
顶,就使用replace的 --------------------编程问答-------------------- replace不会有历史记录的,你试我的例子就知道了
而且你的问题视乎描述不太正确
如果你更改另外一个frame的url,浏览器的地址栏是不会变的,显示的是放framset的页面的地址 --------------------编程问答--------------------
没错,是不会变.
我试了你的例子,但确实还是有历史痕迹 --------------------编程问答-------------------- Response.Write(" <script>parent.Right.location.replace('XXX.aspx'),window.status ='XX'; </script>")
不甘心,再次试了一下还是有历史记录,是不是要配合其他语句使用????? --------------------编程问答-------------------- 这个俺也不知道,做个标记。 --------------------编程问答-------------------- 标记. --------------------编程问答-------------------- 楼主还是贴出来自己的框架代码吧。
location.replace是根本不可能存在历史痕迹的。除非楼主的机器装的不是目前的主流系统,有其自己的一套脚本执行机制。 --------------------编程问答-------------------- 不好意思,没仔细看楼主的要求。
给你答案。请变通一下就OK了。
框架页:
<html>
<head>
<title></title>
</head>
<frameset cols="100,*">
<frame src=left.htm>
<frame src=main.htm>
</frameset>
</html>
left.htm:
<a href=# id=a1 onclick="javascript:parent.window.frames[1].location.replace('1.htm')">1.htm</a>
<BR>
<a href=# id=a2 onclick="javascript:parent.window.frames[1].location.replace('2.htm')">2.htm</a> --------------------编程问答-------------------- 不好意思,没仔细看楼主的要求。
给你答案。请变通一下就OK了。
框架页:
<html>
<head>
<title></title>
</head>
<frameset cols="100,*">
<frame src=left.htm>
<frame src=main.htm>
</frameset>
</html>
left.htm:
<a href=# id=a1 onclick="javascript:parent.window.frames[1].location.replace('1.htm')">1.htm</a>
<BR>
<a href=# id=a2 onclick="javascript:parent.window.frames[1].location.replace('2.htm')">2.htm</a> --------------------编程问答--------------------
parent.window.frames[1]????
获取父级还能有WINDOW OBJECT??
Function setURL(ToFrames,Url){
parent.document.frames[ToFrames].location.replace(Url);
}
<a href="#" onclick="setURL('right','1.htm')">连接</a>
--------------------编程问答-------------------- Response.Write("<script Language=Javascript>window.top.location=\"login.aspx\";</script>"); --------------------编程问答-------------------- 原代码如下,框架
<frameset rows="0,100%,0%" framespacing="0" border="false" >
<frame src= "Main.htm" name = "top" scrolling="Auto" marginwidth=5 >
<frameset cols="15%,85%" frameborder="yes" >
<frame name = "Left" src="LeftMain.aspx" scrolling="no" >
<frame name = "Right" src="RightMain.aspx" scrolling="auto">
</frameset>
<frame src="Main.htm" name = "foot" scrolling="Auto" marginwidth=5 >
</frameset>
左框架上用的是 LinkButton
如某个LinkButton的Click事件代码是:
Response.Write("<script>parent.Right.location.href='XX.aspx',window.status ='XX';</script>") --------------------编程问答-------------------- 后来把最后一句改成
Response.Write(" <script>parent.Right.location.replace('XX.aspx'),window.status ='XX'; </script>")
依然有历史 --------------------编程问答-------------------- 就是让打开的窗体还成为父窗体。 --------------------编程问答-------------------- mark
补充:.NET技术 , ASP.NET