社区
ASP
帖子详情
请教:我想在frame A OnLoad时,把Frame B连到某一个asp页,不知该怎么写?
bibibi
2000-08-22 10:12:00
...全文
68
1
打赏
收藏
请教:我想在frame A OnLoad时,把Frame B连到某一个asp页,不知该怎么写?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
huntout
2000-08-22
打赏
举报
回复
<body onload='parent.frameB.location.href="your.asp"'>
利用WebBrowser彻底解决Web打印问题(包括后台打印)
【利用WebBrowser彻底解决Web打印问题(包括后台打印) 】利用WebBrowser彻底解决Web打印问题(包括后台打印)BS架构下的打印大家是怎么解决的呢,我最近作了
一个
项目正好负责这一块,不仅要求打印
页
面的特定部分,还要求有后台的批量打印,在网上查了一些资料,最后终于解决了。抱着“取之于众 服务于众”的思
想
,我总结了一下,把它拿到网上来与大家分享,希望能帮助遇到类似问题的朋友。我主要使用了IE内置的WebBrowser控件,无需用户下载和安装。WebBrowser有很多功能,除打印外的其他功能就不再赘述了,你所能用到的打印功能也几乎全部可以靠它完成,下面的问题就是如何使用它了。先说显示后打印,后面说后台打印。1.首先引入
一个
WebBrowser在需要打印的
页
面,可以直接添加:到
页
面,或者使用JavaScript在需要的
时
候临
时
添加也可以:document.body.insertAdjacentHTML("beforeEnd","");2 .
页
面设置和打印预览如下所示,直接调用即可document.all.WebBrowser.ExecWB(6,6) 直接打印document.all.WebBrowser.ExecWB(8,1)
页
面设置document.all.WebBrowser.ExecWB(7,1) 打印预览或者:execScript("document.all.WebBrowser.ExecWB 7, 1","VBScript");3 隐藏不打印的
页
面元素和分
页
CSS 有个Media 属性,可以分开设置打印和显示的格式。如 … 中间的格式将只在打印
时
起作用,不会影响显示界面。所以可以设定.Noprint{display:none;}.PageNext{page-break-after: always;}然后给不
想
打印的
页
面元素添加: class="Noprint" ,那就不会出现在打印和打印预览中了。
想
分
页
的地方添加: 就可以了。4.打印
页
面的特定部分我是通过将需要打印的特定部分另建
一个
页
面,然后装入主
页
面的
一个
I
Frame
中,再调用I
Frame
的打印方法,只打印I
Frame
中的内容实现的。如:下面的pring
Frame
js函数将只打印I
frame
中的内容,可以直接引用使用,如print
Frame
(
Frame
Id);window.print = print
Frame
;// main stufffunction print
Frame
(
frame
, onfinish) {if ( !
frame
)
frame
= window;function execOnFinish() {switch ( typeof(onfinish) ) {case "string": execScript(onfinish); break;case "function": onfinish();}if ( focused && !focused.disabled ) focused.focus();}if ((
frame
.document.readyState !== "complete") &&( !
frame
.document.confirm("The document to print is not downloaded yet! Continue with printing?") )){execOnFinish();return;}var eventScope = printGetEventScope(
frame
);var focused = document.activeElement;window.printHelper = function() {execScript("on error resume next: printWB.ExecWB 6, 1", "VBScript");printFireEvent(
frame
, eventScope, "onafterprint");printWB.outerHTML = "";execOnFinish();window.printHelper = null;}document.body.insertAdjacentHTML("beforeEnd","");printFireEvent(
frame
, eventScope, "onbeforeprint");
frame
.focus();window.printHelper = printHelper;setTimeout("window.printHelper()", 0);}// helpersfunction printIsNativeSupport() {var agent = window.navigator.userAgent;var i = agent.indexOf("MSIE ")+5;return parseInt(agent.substr(i)) >= 5 && agent.indexOf("5.0b1") < 0;}function printFireEvent(
frame
, obj, name) {var handler = obj[name];switch ( typeof(handler) ) {case "string":
frame
.execScript(handler); break;case "function": handler();}}function printGetEventScope(
frame
) {var
frame
set =
frame
.document.all.tags("
FRAME
SET");if (
frame
set.length ) return
frame
set[0];return
frame
.document.body;}I
frame
中所装载
页
面的打印效果在所装载
页
面设置就可以了,如分
页
等。5.后台打印我是通过建
一个
隐藏I
frame
实现的,当然仍然会有
页
面装载的过程。下面的函数创建I
frame
装载
页
面并打印。如 printHidden(url) //url为
页
面地址function printHidden(url) {document.body.insertAdjacentHTML("beforeEnd","");var doc = printHidden
Frame
.document;doc.open();doc.write("");doc.write("");doc.write("");doc.close();}function onprintHidden
Frame
() {function onfinish() {printHidden
Frame
.outerHTML = "";if ( window.onprintcomplete ) window.onprintcomplete();}print
Frame
(printHidden
Frame
.printMe, onfinish);}它用到了print
Frame
,所以别忘了引用前面的函数。总之,WebBroswer已经为我们提供了解决方案,我们只要结合需求把它应用好就行了。
frame
间跳转及相关问题
问题:
页
面分为上下两个
frame
,分别为A,B,
frame
B又分为1和2左右两个
frame
,在
frame
1种的连接如何跳转到整个
frame
B解决方案一:如果是html标记的链接,可以用属性target="_parent"表示,直接跳转到父框架中。解决方案二:使用
asp
.net控件,使用Response.Redirect("")
时
,没有target参数可用,可以使用
一个
中间
页
面作为中转,使用jav
asp
.net
页
面中Menu控件下拉菜单被
frame
挡住和i
frame
自适应高度的解决办法
当你在做
一个
仿windows程序的顶部菜单框架的
时
候,在
asp
.net中你可能会使用两个
frame
,
一个
frame
在上面用来放菜单
一个
frame
在下面用来方菜单点击后打开的
页
面.
页
面实现很简单,单运行的
时
候你就发现放菜单的那个
frame
将菜单的下列菜单在挡住根本伸不到下面的
frame
中.解决被挡住的问题是不能使用
frame
,做法是在
一个
单独的
asp
.net
页
面中放
一个
menu 和
一个
if...
加载
页
面或返回到
页
面
时
不触发
onload
事件处理程序
症状 当您跟踪链接在框架集中顶框架, 然后返回到启动位置,
页
onload
事件处理程序, 目标不触发。 解决方案 要解决此问题, 添加 onunload 事件处理程序。以便它将激发 (但
不知
道如何完成此操作) 这开启
onload
事件处理程序。 状态 Microsoft 已确认这是列出了本文 " 适用于 " 一节中 Microsoft 产品中存在错误。 方
html5不支持元素
frame
怎么办,HTML5不支持
frame
set的两种解决方法
解决方法如下:第一种使用i
frame
,但是目前使用i
frame
的人已经越来越少了,而且i
frame
在不同浏览器之间还有不兼容的情况。而且我一些研发的人员,他们表示i
frame
窗口间传值似乎很麻烦。第二种使用jQuery的
onload
方法加载
页
面,不过这种方法跳转多个
页
面后,点击浏览器上方的后退前进是无效的,不过可以认为的添加
一个
返回按钮。所以个人更倾向于这种方法。我一般是这样
写
的$("#main"...
ASP
28,390
社区成员
357,060
社区内容
发帖
与我相关
我的任务
ASP
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
复制链接
扫一扫
分享
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章