Problème lors de l'IMPRESSION d'iframes

Signaler
Messages postés
198
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
16 décembre 2008
-
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
-
Bonjour à tous,

Je vous écris puisque j'ai actuellement un problème lors de l'impression d'iframes.

Je vous explique.

J'ai sur une page aspx, plusieurs iframes, je peux en avoir 1 comme je peux en avoir 15. Ces iframes sont masqués. Je veux permettre à l'utilisateur d'imprimer tous les iframes en cliquant sur un bouton.

Sur mon bouton j'ai mis :
<

INPUT
type="button"
value="IMPRESSION"
id=btn_print
name=btn_print
runat="server"
onclick="javascript:IMPRIMER_ALLER()">

Et dans la balise HEAD de ma page j'ai mis :
<

script
language="JavaScript">

function IMPRIMER_ALLER()


      for (
var i=1;i<=LBL_NBLIGNES_ALLER.value;i++){
         alert(
'formulaire_'+i);
         document.getElementById(
'formulaire_'+i).focus();

         //WebBrowser.ExecWB(6,2,3,0);
      }
}

</script>
Dans le champ LBL_NBLIGNES_ALLER j'ai stocké le nombre d'iframes à imprimer.

Actuellement quand je clique sur le bouton imprimer, ca m'affiche le bon nombre d'alert avec formulaire_1, formulaire_2, formulaire_3.........mais ça imprime que le premier !!!!

J'espère que j'ai été clair.....

Si vous avez des idées je suis preneur.....

www.faucher-metois.fr

12 réponses

Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
bonjour,

>>Ces iframes sont masqués.   
donc je suppose un style="visibility:hidden" par exemple

met leur la classe kivabien


@media print

      {.IoEn    {    visibility:visible;   }   }

@media screen

      {.IoEn    {    visibility:hidden;    }   }

bien sûr avec display none | inline, ça marche pareil

CordialementBul[mon Site][M'écrire]
Messages postés
198
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
16 décembre 2008
1
En fait actuellement les iframes ne sont pas masquées pour mes tests d'impression, mais quand je passerais l'application en production il faudra que je les masque.
Donc je ne pense pas que le problème vienne de la visibilité de ces iframes.....

Merci pour ton aide !

www.faucher-metois.fr
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
>>les iframes ne sont pas masquées
ah ! dommage d'avoir dit qu'ils l'étaient alors   ;o)

s'ils sont visibles, on doit les imprimer alors.
....sauf si l'impression est lancée depuis une iframe,
   là, seule l'iframe est imprimé
( je viens de l'essayer )

          Bul [mon Site] [M'écrire]         
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
p0.htm :


<!--table style= "width:100%;">
<tr>
<td style=" border-width:2px;
border-style:solid;
border-color:#FF8000;
font-family:Courier New;
color:#400040;
font-size:12px;
background-color:#FFEFEF;">


</td>
</tr>
</tbody>
</table-->

<OBJECT     id="WebBrowser"
            classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"
            viewastext></OBJECT>




p1.htm et p2.htm :


<!--table style ="width:100%;">
<tr>
<td style=" border-width:2px;
border-style:solid;
border-color:#FF8000;
font-family:Courier New;
color:#400040;
font-size:12px;
background-color:#FFEFEF;">


</td>
</tr>
</tbody>
</table-->

<OBJECT     id="WebBrowser"
            classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"
            viewastext></OBJECT>



essaye et dis nous....

Bul[mon Site][M'écrire]
Messages postés
198
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
16 décembre 2008
1
ok ok...désolé je m'étais mal exprimé...lol

L'impression est lancée de la page principale.

Je viens de faire d'autres tests !!!et là c'est le drame...Tu vois par exemple j'ai 3 iframes actuellement quand je clique sur le bouton imprimer ca me fait bien 3 impressions mais 3 fois la même. Un coup ca va m'imprimer 3 fois le premier iframe et un autre coup 3 fois le dernier.



www.faucher-metois.fr
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
croisement probablement de nos messages.
tu as essayé avec mon ch'tiot exemple ?
ça donne quoi ?
          Bul [mon Site] [M'écrire]         
Messages postés
198
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
16 décembre 2008
1
voici le code que j'ai sur ma page principale :

dans le head :
<

OBJECT
ID="WebBrowser"
WIDTH=0
HEIGHT=0
CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>
...
<script
language="JavaScript">

function IMPRIMER_ALLER()


      for (
var i=1;i<=LBL_NBLIGNES_ALLER.value;i++){
         alert(
'formulaire_'+i);
         document.getElementById(
'formulaire_'+i).focus();

         WebBrowser.ExecWB(6,2,3,0);

      }
}

</script>

et dans le body :





www.faucher-metois.fr
Messages postés
198
Date d'inscription
jeudi 3 février 2005
Statut
Membre
Dernière intervention
16 décembre 2008
1
j'ai donc quasiment la meme chose que toi.

www.faucher-metois.fr
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
certes...
mais tu appeles où là fonction IMPRIMER_ALLER ?
et pas tout à fait !
tu fais une boucle : inutile. ExecWb imprime la page ( comme window.print )

si tu veux afficher les iframe 1 par 1, déclenche l' ExecWB dans l'iframe

essaye mon exemple.... tu verras : ça baigne

          Bul [mon Site] [M'écrire]         
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
voilà mon exemple  mis à jour pour faire

p0.htm
<!--table style="width:100%;">
<tr>
<td style=" border-width:2px;
border-style:solid;
border-color:#FF8000;
font-family:Courier New;
color:#400040;
font-size:12px;
background-color:#FFEFEF;">


</td>
</tr>
</tbody>
</table-->

<OBJECT     id="WebBrowser"
            classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"
            viewastext></OBJECT>
<script>
    function imprime()
    {    for ( var n=0; n<document.frames.length; n++ )
        {   document.frames[n].focus();
            document.frames[n].impr();   
        }
    }
</script>

p1.htm
<!--table style="width:100%;">
<tr>
<td style=" border-width:2px;
border-style:solid;
border-color:#FF8000;
font-family:Courier New;
color:#400040;
font-size:12px;
background-color:#FFEFEF;">


</td>
</tr>
</tbody>
</table-->
page 1
<script>
    function impr()
    {    WebBrowser.ExecWB(6,2,3,0);    }
</script>
<OBJECT     id="WebBrowser"
            classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"
            viewastext></OBJECT>

p2.htm
<!--table style="width:100%;">
<tr>
<td style=" border-width:2px;
border-style:solid;
border-color:#FF8000;
font-family:Courier New;
color:#400040;
font-size:12px;
background-color:#FFEFEF;">


</td>
</tr>
</tbody>
</table-->
page 2
<script>
    function impr()
    {    WebBrowser.ExecWB(6,2,3,0);    }
</script>
<OBJECT     id="WebBrowser"
            classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"
            viewastext></OBJECT>

CordialementBul[mon Site][M'écrire]
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
euh... remaruqes que directement dans la page mçre... ça baigne
je ne pensais pas... mais si !



<OBJECT     id="WebBrowser"
            classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"
            viewastext></OBJECT>
<script>
    function imprime()
    {    for ( var n=0; n<document.frames.length; n++ )
        {    document.frames[n].focus();
            WebBrowser.ExecWB(6,2,3,0);;   
        }
    }
</script>

Bul[mon Site][M'écrire]
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
36
ça vient peut-être donc du nombre d'iframe transmis ?
( si tu veux les imprimer 1 par 1 ! )
          Bul [mon Site] [M'écrire]