因为此时新窗口还没有完全建立你最好在
'printForm.aspx'里做
<body onload="document.body.innerHTML=opener.aaa;window.print()">

解决方案 »

  1.   

    放在'printForm.aspx'里做是没有报错,但是什么都没有打印出来呀!我是在一个网页上设置了一个层,将层的数据传递到另一个网也打印,是要打印一个datagrid的内容!得先得到aaa,才能传递给'printForm.aspx',帮忙!!!!谢谢!!!
      

  2.   

    我试了一下,<body onload="document.body.innerHTML=opener.aaa;window.print()">是因为它没有找到aaa这个变量,请问如何才可以让它找到?
    我改成<body onload="document.body.innerHTML=11111111111;window.print()">就可以打印111111111,请帮忙呀!!!!回答我呀!!!谢谢!!!!!!我是笨玩具熊呀!!!!!
      

  3.   

    var aaa
    function printpage()
    {
    aaa = document.all.printdiv.innerHTML;
    var printOpen
    printOpen=window.open('printForm.aspx','open1','width=600,height=390,top=100,left=100');
    printOpen.document.body.innerHTML = aaa;
    printOpen.window.print(document.Print);
    }
    'printForm.aspx'里做
    <body onload="document.body.innerHTML=opener.aaa;window.print()">
      

  4.   

    function printpage()
    {
    var aaa = document.all.printdiv.innerHTML;
    var printOpen
    var openrul="printForm.aspx?aaa="+aaa
    printOpen=window.open(openrul,'open1','width=600,height=390,top=100,left=100');
    printOpen.document.body.innerHTML = aaa;
    printOpen.window.print(document.Print);
    }
    如果aaa中有特殊字符就不知道怎么办啦!
      

  5.   

    function printpage()
    {
    var aaa = document.all.printdiv.innerHTML;
    var printOpen
    var openrul="printForm.aspx?aaa="+aaa
    printOpen=window.open(openrul,'open1','width=600,height=390,top=100,left=100');
    printOpen.document.body.innerHTML = aaa;
    printOpen.window.print(document.Print);
    }
    如果aaa中有特殊字符就不知道怎么办啦!
      

  6.   

    function printpage()
    {
    var aaa = document.all.printdiv.innerHTML;
    var printOpen
    var openurl="printForm.aspx?aaa="+aaa; //如果aaa中有特殊字符就不知道怎么办啦!
    printOpen=window.open(openurl,'open1','width=600,height=390,top=100,left=100');
    }
    /////printForm.aspx:
    <body onload="document.body.innerHTML=opener.aaa;window.print()">