Je suis (presque) parvenu à mes fins...
A la place de ce bout de code :
1 2 3 4
| document.frames["iframe1"].location.href="monImpression.php";
document.frames["iframe1"].location.reload(true);
document.frames["iframe1"].window.focus();
document.frames["iframe1"].print(); |
J'ai mis celui-ci :
document.location.href="maPage.php?impression"
Et je ne charge ma page d'impression dans mon iframe que si cette variable est définie :
1 2 3
| <INPUT class="css-button" type="button" name="boutonPrint" id="boutonPrint" value="IMPRIMER" onClick="print();" >
<IFRAME SRC="<?php if(isset($_GET["impression"])) echo 'monImpression.php' ?>" name="iframe1" id="iframe1" width="100%" height="0" style="visibility:visible;"></IFRAME>
<IFRAME SRC="about:blank" name="iframe2" id="iframe2" width="20" height="20" style="visibility:hidden;"></IFRAME> |
Du coup, ma page à imprimer n'est généré que quand mon code est connu donc il est paré pour l'impression...
Et pour imprimer, j'utilise le onLoad de ma page à imprimer en y mettant ça :
onload="parent.frames['iframe1'].window.focus();parent.frames['iframe1'].print();"
En revanche j'ai perdu l'effet du submit de mon bouton d'impression...
Partager