Iframe的基础应用——关于Iframe刷页问题的两种方法

添加人:iyond七级(4341分)   添加时间:2007-05-19    阅读次数:1834  收藏此教程

      看到题目相信大家都已经知道这次要讲述什么内容了。关于Iframe刷页问题在网络中随便一搜索就能找到,我也是这么做的,可是搜索到的结果不一定就是自己的东西,因此我们应该学会总结。在这里我们就来总结一下关于Iframe刷页。
      网络中的论坛或者是博客中大多数都是用的父页A.aspx和子页B.aspx形式来举例子的,这里我们的例子来用三个页面,一个父页A.aspx和两个子页B.aspx、C.aspx,可能大家会觉得,为何要用两个子页呢,用一个子页和两个子页有什么区别呢?因为我们这里要用到从子页C.aspx来刷新子页B.aspx。
      下面先讲解第一种刷新方法:“重新定向到本页”
父页A.aspx的脚本如下:

 1 <% @ Page language = " c# "  Codebehind = " A.aspx.cs "  AutoEventWireup = " false "  Inherits = " Demo.A "   %>
 2 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"  >
 3 < HTML >
 4      < HEAD >
 5          < title > A </ title >
 6          < meta  content ="Microsoft Visual Studio .NET 7.1"  name ="GENERATOR" >
 7          < meta  content ="C#"  name ="CODE_LANGUAGE" >
 8          < meta  content ="JavaScript"  name ="vs_defaultClientScript" >
 9          < meta  content ="http://schemas.microsoft.com/intellisense/ie5"  name ="vs_targetSchema" >
10      </ HEAD >
11      < body  MS_POSITIONING ="GridLayout" >
12          < form  id ="Form1"  method ="post"  runat ="server" >
13              < iframe  id ="BIframe"  name ="BIframe"  style ="Z-INDEX: 102; LEFT: 0px; WIDTH: 748px; POSITION: absolute; TOP: 0px; HEIGHT: 511px"  marginWidth ="0"  marginHeight ="0"  src ="B.aspx"  frameBorder ="0"  scrolling ="no"  allowTransparency ></ iframe >
14              < iframe  id ="CIframe"  name ="CIframe"  style ="Z-INDEX: 105; LEFT: 750px; OVERFLOW: hidden; WIDTH: 254px; POSITION: absolute; TOP: 0px; HEIGHT: 511px"  marginWidth ="0"  marginHeight ="0"  src ="C.aspx"  frameBorder ="0"     scrolling ="no"  allowTransparency DESIGNTIMEDRAGDROP ="16" ></ iframe >
15          </ form >
16      </ body >
17 </ HTML >

父页A.aspx无后台代码。
子页B.aspx的脚本如下:

 1 <% @ Page language = " c# "  Codebehind = " B.aspx.cs "  AutoEventWireup = " false "  Inherits = " Demo.B "   %>
 2 <! DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"  >
 3 < HTML >
 4      < HEAD >
 5          < title > B </ title >
 6          < meta  content ="Microsoft Visual Studio .NET 7.1"  name ="GENERATOR" >
 7          < meta  content ="C#"  name ="CODE_LANGUAGE" >
 8          < meta  content ="JavaScript"  name ="vs_defaultClientScript" >
 9          < meta  content ="http://schemas.microsoft.com/intellisense/ie5"  name ="vs_targetSchema" >
10          < meta  http-equiv ="pragma"  content ="no-cache" >
11          < meta  http-equiv ="Cache-Control"  content ="no-cache, must-revalidate" >
12          < base  target ="_self" >
13          < script  language ="javascript"  type ="text/javascript" >
14              function  RefreshmyForm()
15              {
16                  var  myForm  =  document.Form1;
17                 myForm.submit();
18             }

19         
</ script >
20      </ HEAD >
21      < body  MS_POSITIONING ="GridLayout" >
22          < form  id ="Form1"  method ="post"  runat ="server" >
23              < div  id ="LayersDiv"  style ="FONT-SIZE: 9pt; Z-INDEX: 112; LEFT: 0px; WIDTH: 175px; CURSOR: hand; COLOR: navy; PADDING-TOP: 6px; FONT-STYLE: normal; FONT-FAMILY: 宋体; POSITION: absolute; TOP: 0px; HEIGHT: 26px; TEXT-ALIGN: center; FONT-VARIANT: normal"  onclick ="LayersDivOnClick();"  align ="left" > Div层显示控制 </ div >
24              < div  id ="LayersControlDiv"  style ="Z-INDEX: 115; LEFT: 0px; VISIBILITY: hidden; WIDTH: 156px; CURSOR: hand; POSITION: absolute; TOP: 26px; HEIGHT: 360px" > 隐藏的Div层 </ div >
25          </ form >
26          < script  language ="javascript"  type ="text/javascript" >
27          var  myDiv  =  document.getElementById( " LayersControlDiv " );
28          function  LayersDivOnClick()
29          {
30              if (myDiv.style.visibility  ==   " hidden " )
31              {
32                 myDiv.style.visibility  =   " visible " ;
33             }

34              else
35              {
36                 myDiv.style.visibility  =   " hidden " ;
37             }

38         }

39         
</ script >
40      </ body >
41 </ HTML >

(这里有一个控制Div层显示的JavaScript的方法从第26行开始的,以及第10、11、12行标记是为了去处页面缓存的,当某个aspx页面作为弹出页面或者嵌入在Iframe中的页面而言是需要这三行代码消除页面缓存的,否则呈现的是缓存中的数据页面——不值得一提,但还是提了,呵呵……)

2页 第1上一页12下一页
相关的教程: iframe
收藏此教程

当前平均分: 0.0(0 次打分)

-5-4-3-2-1012345
评论主题
您的大名
您的评论
验证码 点击换一个验证码
知识库搜索: