弹出的模态窗口(子窗口)中调用IE的打印预览功能,结果IE弹出错误:“当前页面发生脚步错误...错误:不支持该命令 代码:0”,

来源:互联网 发布:淘宝超级店长怎么修改 编辑:程序博客网 时间:2024/05/22 06:59
  • 周报
  • window.showModalDialog(theURL+"&ttime="+new Date().getTime(),wbxstr,"dialogWidth=986px;dialogHeight=600px;center:yes;scroll:no;status:no");

      我的打印预览代码如下(打印没问题): 
    <OBJECT classid='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2' height=0 id=wb name=wb width=0> </OBJECT> 
    <div style="margin-left:150px"> 
    <input type='button' name='Submit1' value='- 打印 -' onclick='window.print();' class='noprint'/> 
    <input type='button' name='Submit2' value='-打印预览-' onclick='wb.execwb(7,1);' class='noprint'/> 
       

    本篇文章来源于 www.phpzy.com 原文链接:http://www.phpzy.com/php/1145597.html

     

    关注中,我现在也遇到这个问题了,楼主有没解决?有的话告诉一下哇。


    楼主,碰巧我们的一个项目也用到了,呵呵。这个问题可废了不少时间。 这样的,对于WebBrowser控件的定义,不要放到弹出的窗体b.html里,而放在执行showModalDialog命令的窗体里a.html里。 通过window.showModalDialog()传递给弹出来的窗口,然后再使用,就没有问题了。 a.html片段: HTML code
    <script> window.onunload = function(){ alert("window.onunload"); } function popup(){ window.showModalDialog('b.html',WebBrowser,'dialogHight:500px;dialogWidth:650px;center:yes;resizeable:no;help:no;status;no'); }</script>......<object id="WebBrowser" name="WebBrowser" classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2" height="0" width="0"> </object> 被弹出的窗体b.html片段 HTML code

    <script> var args=window.dialogArguments; var wb = args; function print(){ wb.ExecWB(6,6); } </script> 


    由于网站模块开发的需要 遇到在弹出的模态窗口中实现打印功能的问题 把自己的解决方法记录如下: 方法一、使用对象实现在弹出模态窗口后自动打印模态窗口中的内容 由于将对象放在弹出的模态窗口中无法实现打印功能,所以将对象放在弹出模态窗口的页面中。 view plaincopy to clipboardprint? parent.php:上述代码可以实现打印功能,可是打印出的内容却是弹出模态窗口的页面的内容而不是模态窗口的内容。一直没有找到解决的方法,还望有解决方法的朋友可以帮忙。 方法二、在弹出的模态窗口中添加打印按钮,点击打印按钮后改变按钮的css属性(为避免把按钮打印出来),使用window.print()来打印模态窗口中的内容。

    解决方法: a.aspx 中window.showModalDialog 调用方法传递 dialogArguments属性为 window 对象 window.showModalDialog("b.aspx",window,"....") ; b.aspx 中 var openobj = window; if(typeof(window.dialogArguments) == "object") { openobj = window.dialogArguments; } openobj.open("c.aspx"); 这样处理 c.aspx中 Session就不会丢失了绝对管用,我用过了