CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Web 开发 >  JavaScript

怎样在页面中实现打印设置和打印预览iframe中的内容?

楼主gjs_w(阿松)2003-09-03 20:34:40 在 Web 开发 / JavaScript 提问

各位老大,我现在可以打印iframe中的内容,但不知怎样实现打印设置和打印预览iframe中的内容?   (iframe中的内容多为word文档)  
   
  HELP   ME! 问题点数:0、回复次数:17Top

1 楼dragon2006(Kira)回复于 2003-09-03 20:53:42 得分 0

<object   id="WebBrowser"   width=0   height=0   classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">    
  </object>    
  <OBJECT   id=closes   type=application/x-oleobject    
  classid=clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11><param   name=Command   value=Close></object>    
  <SCRIPT>    
  function   window.onbeforeprint(){    
  alert("打印前事件");    
  }    
  function   window.onafterprint(){    
  alert("打印后事件");    
  closes.Click();    
  }    
  </SCRIPT>  
  <input   name=Button   onClick=document.all.WebBrowser.ExecWB(8,1)   type=button   value=页面设置>    
  <input   name=Button   onClick=document.all.WebBrowser.ExecWB(6,6)   type=button   value=打印预览>    
  <input   name=Button   onClick=document.all.WebBrowser.ExecWB(6,1)   type=button   value=页面打印>Top

2 楼zgmboy(guoming)回复于 2003-09-03 20:57:45 得分 0

学习。Top

3 楼gjs_w(阿松)回复于 2003-09-03 21:04:50 得分 0

大哥,我想实现打印设置和打印预览iframe中的内容,你给我window.onbeforeprint()和window.onafterprint()干什么???   不过我还是很感谢你.Top

4 楼dragon2006(Kira)回复于 2003-09-04 08:37:32 得分 0

你改一下不就行了吗,那是我调试的语句,这样写的啦:  
  <!--   IE5.5以上   -->  
  <OBJECT   id=WebBrowser   classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2   height=0   width=0></OBJECT>  
  <input   type=button   value=打印           onclick="document.all.WebBrowser.ExecWB(6,1)">  
  <input   type=button   value=直接打印   onclick="document.all.WebBrowser.ExecWB(6,6)">  
  <input   type=button   value=页面设置   onclick="document.all.WebBrowser.ExecWB(8,1)">  
  <input   type=button   value=打印预览   onclick="document.all.WebBrowser.ExecWB(7,1)">Top

5 楼gjs_w(阿松)回复于 2003-09-08 10:08:05 得分 0

我是想打印一张页面中某一iframe中的内容,不是整张页面.  
  哪位大哥帮帮我吧!Top

6 楼zs8816685(贴必结)回复于 2003-09-08 10:25:40 得分 0

onclick=document.framename.document.webbrowser.execWB(7,1)  
  framename指的是iframe的IDTop

7 楼ajsword(一直不会编程)回复于 2003-09-08 10:35:28 得分 0

ExecWB后面的参数分别代表什么Top

8 楼gjs_w(阿松)回复于 2003-09-08 10:41:24 得分 0

还是不行,提示document.ifrm1.document为空或不是对象.   (ifrm1为iframe的ID)Top

9 楼cql0007(南方过客 )回复于 2003-09-08 15:01:35 得分 0

呵呵,果然是和我碰到的问题一样的啊.  
  用这个:  
  <script>  
  document.frames("ifrm").document.execCommand("Print",   false);//"ifrm"为iframe的ID  
  </script>  
  Top

10 楼gjs_w(阿松)回复于 2003-09-08 15:08:37 得分 0

我现在是想解决打印设置和打印预览,不是打印的问题!  
  难道就没有人可以帮我了吗???!!!Top

11 楼cql0007(南方过客 )回复于 2003-09-08 15:42:08 得分 0

打印设置的问题上面已经有人帮你解决了,你做一下修改就行了  
  <OBJECT   id=WebBrowser   classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2   height=0   width=0></OBJECT>  
  <input   type=button   value=页面设置   onclick="document.frames("ifrm").document.WebBrowser.ExecWB(8,1)">  
  <input   type=button   value=打印预览   onclick="document.frames("ifrm").document.WebBrowser.ExecWB(7,1)">  
  Top

12 楼liuruhong(蓝色街灯)回复于 2003-09-08 15:57:03 得分 0

这个是我项目中的一段代码,可以实现对于frame的打印预览,希望对于你有所帮助  
  ----------------------  
  var   strObject="<OBJECT   ID=\"pt\"   CLASSID=\"CLSID:B43D3361-D975-4BE2-87FE-438AB8E74394\"   codebase=\"brochuremachine.cab\"   VIEWASTEXT></OBJECT>";  
  //var   ptc=document.createElement(strObject);  
  var   printerCTL=oDoc.getElementById("pt");  
  try   {  
  if   (   !   printerCTL){  
  oDoc.body.insertAdjacentHTML("beforeEnd",strObject);  
  }  
  var   printerCTL=oDoc.all.pt;  
  printerCTL.SetFilePath("http://blueswing.vicp.net/PrintTemplate/xp/pt.htm");  
  printerCTL.LaunchPT();  
  }  
  catch(e){  
  alert("打印预览过程中出现错误");  
  }  
   
  oDoc就是iframe的document对象,你可以通过对于iframe页面动态插入控件,然后调用其方法来实现的Top

13 楼melonjava()回复于 2003-09-08 18:11:39 得分 0

dragon2006(笨龙)    
  我用了你的方法,其中的打印预览无法实现,报错为:未知错误!  
   
  <input   type=button   value=打印预览   onclick="document.all.WebBrowser.ExecWB(7,1)">  
  Top

14 楼gjs_w(阿松)回复于 2003-09-10 17:03:15 得分 0

liuruhong(蓝色街灯)  
  怎样对iframe页面动态插入控件?  
  我的iframe的ID为ifrm1,用ifrm1.body.insertAdjacentHTML("beforeEnd",strObject);提示ifrm1.body为空或不是对象.  
  Top

15 楼gjs_w(阿松)回复于 2003-09-10 17:04:18 得分 0

还有一点:我的iframe中内容多为word文档.Top

16 楼iworm(E拉罐)回复于 2003-12-30 17:43:25 得分 0

顶,顶,顶,我今天为这个问题找了一天还是没解决,高手在哪?Top

17 楼arkang168(arkang)回复于 2004-01-08 11:06:10 得分 0

怎样在javascript中直接设置好打印方式为横向或纵向,比如:  
  <input     type=button   value="横向打印">    
  <input     type=button   value="纵向打印">  
  不用提示用户再次设置,直接按照按钮提示打印Top

相关问题

  • 请教大家:在一个页面里有一个iframe,在iframe里放一个按钮打印预览,怎样做到打印预览看到的只是iframe里的页面的内容.
  • 如何实现iframe的打印预览?
  • 使用QuickReport打印预览时如何设置页面大小!
  • 打印时,页面设置后预览的问题
  • 打印预览
  • 打印预览
  • 打印预览?
  • 有没有的同时预览10个打印页面的方法?
  • 用WebBrowser控件怎样进行框架页面的打印预览?
  • 为什么我的html页面打印预览会多出一页

关键词

  • 打印
  • 预览
  • 页面
  • 内容
  • 解决
  • document
  • ifrm1
  • printerctl
  • iframe
  • strobject

得分解答快速导航

  • 帖主:gjs_w

相关链接

  • Web开发类图书

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo