2012-03-24 3 views
20

print() non funziona in IE dopo l'apertura di una nuova finestra. Funziona in Chrome. Ecco un tester:js Window.open quindi stampare()

<html> 
<head> 
<script type="text/javascript"> 
    function openWin() 
    { 
    myWindow=window.open('','','width=200,height=100'); 
    myWindow.document.write("<p>This is 'myWindow'</p>"); 
    myWindow.focus(); 
    myWindow.print(); //DOES NOT WORK 
    } 
</script> 
</head> 
<body> 

<input type="button" value="Open window" onclick="openWin()" /> 

</body> 
</html> 

risposta

2

provare questo

<html> 
<head> 
<script type="text/javascript"> 
function openWin() 
{ 
myWindow=window.open('','','width=200,height=100'); 
myWindow.document.write("<p>This is 'myWindow'</p>"); 
myWindow.focus(); 
print(myWindow); 
} 
</script> 
</head> 
<body> 

<input type="button" value="Open window" onclick="openWin()" /> 

</body> 
</html> 
+1

L'unica soluzione che ha funzionato per me in IE-11. Grazie !! – user3340627

+0

Sul mio cromo, la finestra rimane aperta anche dopo la chiusura della finestra di stampa – Miguel

12

Turgut ha dato la giusta soluzione. Solo per chiarezza, è necessario aggiungere chiudere dopo la scrittura.

function openWin() 
    { 
    myWindow=window.open('','','width=200,height=100'); 
    myWindow.document.write("<p>This is 'myWindow'</p>"); 


    myWindow.document.close(); //missing code 


    myWindow.focus(); 
    myWindow.print(); 
    } 
3
<script type="text/javascript"> 

    function printDiv(divName) { 
     var printContents = document.getElementById(divName).innerHTML; 
     var originalContents = document.body.innerHTML; 
     document.body.innerHTML = printContents; 
     window.print(); 
     document.body.innerHTML = originalContents; 
    } 

</script> 


<div id="printableArea">CONTENT TO PRINT</div> 



<input type="button" onclick="printDiv('printableArea')" value="Print Report" /> 
3
function printCrossword(printContainer) { 
    var DocumentContainer = getElement(printContainer); 
    var WindowObject = window.open('', "PrintWindow", "width=5,height=5,top=200,left=200,toolbars=no,scrollbars=no,status=no,resizable=no"); 
    WindowObject.document.writeln(DocumentContainer.innerHTML); 
    WindowObject.document.close(); 
    WindowObject.focus(); 
    WindowObject.print(); 
    WindowObject.close(); 
}