博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用框架页面的跳转 转
阅读量:6156 次
发布时间:2019-06-21

本文共 4010 字,大约阅读时间需要 13 分钟。

转自

"

在Asp.NET使用框架页面的时候,常常在框架内部页面中进行跳转,但是我们常常也会遇到这样的一种情况:即我们需要跳转的不只是部分框架的页面,而是将整个主页面进行跳转,比如在框架左侧页面中操作的时候,需要跳转到登陆页面等等。     这种情况下的跳转其实跟HTML中进行主框架的跳转是一样的,在早期使用HTML的时候,我们使用Javascript,在Asp.net中,后台代码可以为:     Response.Write("");        Response.Write("");        Response.Write("");那当我们不仅需要转移框架页面,还需要传递参数,那么传参跳转的语句显然既可以使用QueryString在跳转的URL后面加“?XX='XXXXX'”即可,也可以使用Session来实现。问题解决了,我们来引申一下:    如果我们要跳转的不是主框架页面了,而是右边甚至于是框架中的任意一个页面,那么该如何呢?答案其实也很简单,我们再来仔细研究下我们上面列出来的三条跳转语句,都是使用的获取Documnet中的父层的框架对象,然后进行跳转,那我们其实只要使用我们熟悉的Javascript获取到相应的要跳转的框架对象进行跳转,至于传参嘛,那就跟上面是完全一样了哦!          我们来看下示例:Response.Write"");     实现跳转了吗?是的,恭喜了,但是这样OK了吗?还没有...       我们发现,这样进行跳转的时候,左边的框架确实是跳转了,但是右边的框架也随即跟着刷新了,右边页面中所作的一些改动也都被重置掉了,这可不是我们想要的结果,那么怎么办?再往下看:      我们都知道,在HTML时代是不存在这个问题的,为什么呢?嘿嘿,因为那是HTML控件,使用的JavaScript客户端代码,因此它不会回发服务器,那么我们是不是可以也使用HTML控件,然后再在它的onclick时间中实现呢?  当然是可以的,你不要跟我说你用的是服务端控件,你要在后台代码里实现哦,在LOAD时间里AddAttributes方法添加一个onclick事件就OK了的。         我在网上赚了一圈,还发现一个牛人提出来的方法,看完之后不得不提一下HTML中的target ,具体内容?白度上自己摆一把去~    我这里就把牛人的方案照搬过来了阿:  假设左框架为   frmLeft,右框架为   frmRight                  关于左右框架间的数值传递有几种方法:       第一种:不提交服务器,在客户端实现       left.aspx   中的代码                  此方法通过   URL   传参数,不安全          第二种,用   POST   的方法,left.aspx   的代码,注意   form   的   target         
编写提交按钮事件 Session["ID"]=TextBox1.Text; Response.Redirect ("right.aspx"); 此方法较安全,但多一个往返

"

第一次接触到框架, 贴一个自己的例子, 可行

 
<%
@ Page Language
=
"
C#
"
AutoEventWireup
=
"
true
"
CodeBehind
=
"
AdminDefault.aspx.cs
"
Inherits
=
"
shangchengf.Admin.AdminDefault
"
%>
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html
xmlns
="http://www.w3.org/1999/xhtml"
>
<
head
runat
="server"
>
<
title
>
无标题页
</
title
>
</
head
>
<
frameset
cols
="100,*"
frameborder
="no"
border
="0"
framespacing
="0"
>
<
frame
src
="left.aspx"
name
="leftFrame"
scrolling
="No"
noresize
="noresize"
id
="leftFrame"
title
="leftFrame"
/>
<
frame
src
="Adminhome.aspx"
name
="Adminhome"
id
="Adminhome"
title
="Adminhome"
/>
</
frameset
>
<
noframes
></
noframes
>
<
body
>
<
form
id
="form1"
runat
="server"
>
<
div
>
</
div
>
</
form
>
</
body
>
</
html
>
 
<%
@ Page Language
=
"
C#
"
AutoEventWireup
=
"
true
"
CodeBehind
=
"
left.aspx.cs
"
Inherits
=
"
shangchengf.Admin.left
"
%>
<!
DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
>
<
html
xmlns
="http://www.w3.org/1999/xhtml"
>
<
head
runat
="server"
>
<
title
>
无标题页
</
title
>
</
head
>
<
body
>
<
script
type
="text/javascript"
>
function
check1(){
parent.document.getElementById(
"
Adminhome
"
).src
=
"
Adminhome.aspx
"
}
function
check2(){
parent.document.getElementById(
"
Adminhome
"
).src
=
"
UserManagement.aspx
"
}
function
check3(){
parent.document.getElementById(
"
Adminhome
"
).src
=
"
GeneralEditor.aspx
"
}
function
check4(){
parent.document.getElementById(
"
Adminhome
"
).src
=
"
NewsEditor.aspx
"
}
function
check5(){
parent.document.getElementById(
"
Adminhome
"
).src
=
"
ProductEditor.aspx
"
}
function
check6(){
parent.document.getElementById(
"
Adminhome
"
).src
=
"
OrderEdit.aspx
"
}
function
check7(){
parent.document.getElementById(
"
Adminhome
"
).src
=
"
ProfileEdit.aspx
"
}
function
check8(){
parent.document.location.href
=
'
../User/Default.aspx
'
}
</
script
>
<
form
id
="form1"
runat
="server"
>
<
div
>
<
div
>
<
a
href
="#this"
onclick
="javascript:check1()"
>
后台首页
</
a
>
<
a
href
="#this"
onclick
="javascript:check2()"
>
用户管理
</
a
>
<
a
href
="#this"
onclick
="javascript:check3()"
>
常识编辑
</
a
>
<
a
href
="#this"
onclick
="javascript:check4()"
>
新闻编辑
</
a
>
<
a
href
="#this"
onclick
="javascript:check5()"
>
产品编辑
</
a
>
<
a
href
="#this"
onclick
="javascript:check6()"
>
订单编辑
</
a
>
<
a
href
="#this"
onclick
="javascript:check7()"
>
简介编辑
</
a
>
<
a
href
="#this"
onclick
="javascript:check8()"
>
返回前台
</
a
>
</
div
>
</
div
>
</
form
>
</
body
>
</
html
>

转载于:https://www.cnblogs.com/ndxsdhy/archive/2011/06/14/2080222.html

你可能感兴趣的文章
jquery用法大全
查看>>
PC-BSD 9.2 发布,基于 FreeBSD 9.2
查看>>
css斜线
查看>>
Windows phone 8 学习笔记(3) 通信
查看>>
Revit API找到风管穿过的墙(当前文档和链接文档)
查看>>
Scroll Depth – 衡量页面滚动的 Google 分析插件
查看>>
Windows 8.1 应用再出发 - 视图状态的更新
查看>>
自己制作交叉编译工具链
查看>>
Qt Style Sheet实践(四):行文本编辑框QLineEdit及自动补全
查看>>
[物理学与PDEs]第3章习题1 只有一个非零分量的磁场
查看>>
深入浅出NodeJS——数据通信,NET模块运行机制
查看>>
onInterceptTouchEvent和onTouchEvent调用时序
查看>>
android防止内存溢出浅析
查看>>
4.3.3版本之引擎bug
查看>>
SQL Server表分区详解
查看>>
使用FMDB最新v2.3版本教程
查看>>
STM32启动过程--启动文件--分析
查看>>
垂死挣扎还是涅槃重生 -- Delphi XE5 公布会归来感想
查看>>
淘宝的几个架构图
查看>>
linux后台运行程序
查看>>