首页 新闻 搜索 专区 学院

关于页面自动套到iframe或自动添加头尾办法

0
悬赏园豆:10 [已解决问题] 解决于 2015-01-10 18:12

问题场景:

       我有一个页面结构,包括 header  container(内容主体)  footer 。由于内容主体需要独立打开(比如新增表单,不能包括 header和footer,只需要  container  内容),故将页面分为两部分。

一部分为包含 header 和 footer 的 iframe。内容主体放到页面 a.aspx (例)中,包含container 的内容。那么当从index.aspx  中某个链接点击,跳转到 a.aspx,而我又想此时的页面效果为完整页面:

<header /> --在iframe中

      <container />  --a.aspx的内容

<footer /> --在irame中

请问我又什么办法,跳转到 a.aspx后自动添加上头和尾的内容,就像它套在 iframe 中一样呢?不甚感激!

俺不是肥熊猫的主页 俺不是肥熊猫 | 初学一级 | 园豆:18
提问于:2015-01-09 00:47
< >
分享
最佳答案
1

首选, 你要明白一点, iframe是什么东西?

你这样把一个完整页的header, container, footer残忍的分开, 你考虑过它们的感受吗? 

如果你想这么干, 你就不能考虑用asp.net中的母版页吗?

如果你不想用母版页, 你就不能写个公共的方法, 每个XX.aspx页面都调用这个方法, Respond.wirter(html)后台生成前端的html代码吗? 

你需要补习html基础、asp.net母版页的使用asp.net生命周期等。

收获园豆:10
问天何必 | 老鸟四级 |园豆:3301 | 2015-01-09 11:27

你好,感谢你的回答。

我也考虑过使用模板页,但是问题是,如果使用模板页,container的内容就无法独立使用了。

因为我有些功能需要只使用 不包含头尾的 container 内容为页面。

 

我当前的做法是: 当跳转到 a.aspx 页面,url中包含参数 isInFrame,当isInFrame=1时,js判断当前页面的 parent 是否为 ifame(固定的id),如果不是,则页面重定向到 iframe页面,并将当前 url当参数传递给 iframe,iframe接受该参数动态将该 iframe 的 src赋值为传回的url参数。

 

这样就会存在一个问题,页面加载完成后跳转到 iframe iframe.src="xxx";

这样当前页面就需要加载两次。

俺不是肥熊猫 | 园豆:18 (初学一级) | 2015-01-09 12:37

@俺不是肥熊猫: 你的container要多处使用的话, 只能单独出来,  

当页面接收参数后, 你的iframe最好用js方式去创建。 如<script>documnet.write("<iframe src=... />")</script>

如果用了js判断, 你就可以自由加代码做判断了。 

问天何必 | 园豆:3301 (老鸟四级) | 2015-01-09 12:58

@问天何必:   非常感谢你的回复。  问题在于 header 和 flooter 的内容很多,如果使用 js 输出,恐怕会很麻烦。。。

 

当前我替换了方案,采用了模板页。

当传入参数标志不需要头尾时, 使用js将 header 和 flooter的 display 设置为 none。

俺不是肥熊猫 | 园豆:18 (初学一级) | 2015-01-10 18:11
其他回答(1)
0

首先,我们明确一点,网页,也是字符串拼出来的代码,然后交给浏览器解释的。

换句话说,只要你给浏览器的代码是它可以解释的,就是可行的。

举个例子,加入字符串中存在 "<html></html>"的字样,浏览器就知道了,这部分代码是在描述一个网页。

回答完毕。

焰£天琊 | 园豆:418 (菜鸟二级) | 2015-01-09 11:04

感谢你的回答。我想可能是我的思路有问题。

我当前的需求本身就是错误的。。。

支持(0) 反对(0) 俺不是肥熊猫 | 园豆:18 (初学一级) | 2015-01-09 12:39
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册