Avatar billede mikmakmuk Nybegynder
30. august 2002 - 14:56 Der er 62 kommentarer og
1 løsning

at printe en skjult side

Det jeg gerne vil er at printe en side som er skjult

jeg har prøvet

<html>

<head>
<script type="text/javascript">
function printpage()
{
window.print("http://www.jubii.dk")
}
</script>

</head>
<body>

<form>
<input type="button" value="Print this page" onclick="printpage()">
</form>
</body>
</html>

men det virker altså ikke
Avatar billede mikmakmuk Nybegynder
30. august 2002 - 14:58 #1
Det hænger sammen med at jeg skal vise noget på skærmen som skal kunne printes ud. Problemet er jo så bare at det lige skal passe til printeren
Avatar billede Slettet bruger
30. august 2002 - 15:02 #2
Du bliver nødt til at åbne siden på én eller anden måde.
Enten kan du åbne et nyt vindue, eller du kan åbne en (skjult) frame eller iframe.
Det smarteste er at lægge funktionen i selve siden, der skal printes:

<body onLoad="self.print();">

For at gøre en iframe "usynlig" skriver du følgende:

<iframe src="about:blank" width="0" height="0" frameborder="0" style="display: none;" name="ifr"></iframe>

Og for at printe:

<form>
<input type="button" value="Print" onClick="document.ifr.location.href = 'side_der_skal_prints.html';">
</form>
Avatar billede mikmakmuk Nybegynder
30. august 2002 - 15:07 #3
tak skal du have
Avatar billede mikmakmuk Nybegynder
30. august 2002 - 15:34 #4
hmmmm

Jeg forstår ikke helt det med Iframen. Det skal virke sådan at der er en knap på en side som printer en anden, uden at brugeren kan se det på skærmen. Hmm det lød vist lidt underligt LOL. Altså den side der bliver printet er lavet til formålet.
Avatar billede mikmakmuk Nybegynder
30. august 2002 - 15:36 #5
skal jeg ligge hele siden ind i en Iframe
Avatar billede Slettet bruger
30. august 2002 - 16:03 #6
Du skal lave en side, der skal printes ud. Lad os kalde den "print.html".
I den side skal body-tagget se således ud:

<body onLoad="self.print();">

I den side, der skal printe "print.html", skal du indsætte følgende lille stykke kode:

<iframe src="about:blank" width="0" height="0" frameborder="0" style="display: none;" name="ifr"></iframe>

Og dette er en knap, der kan printe siden:

<form>
<input type="button" value="Print" onClick="document.ifr.location.href = 'print.html';">
</form>
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 04:52 #7
okay. Det prøver jeg :-)
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 05:04 #8
Siden med knappen.

<html>
<body>
<form>
<input type="button" value="Print" onClick="document.ifr.location.href = 'print.html';">
</form>
</body>
</html>


siden som skal printes
<html>
<body onLoad="self.print();">
<iframe src="about:blank" width="0" height="0" frameborder="0" style="display: none;" name="ifr">
Dette er siden der skal printes
</iframe>

</body>
</html>
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 05:04 #9
Jeg får en fejl når jeg trykker på knappen
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 05:38 #10
<html>
<body>
<form>
<input type="button" value="Print" onClick="document.ifr.location.href  = 'print.html';">
</form>
<iframe src="about:blank" width="0" height="0" frameborder="0" style="display: none;" name="ifr"></iframe>
</body>
</html>

og

<html>
<body onLoad="self.print();">
Dette er siden der skal printes
</body>
</html>

Den printer bare den forkerte side, altså den med knappen på :-(
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 05:41 #11
Der må jo være noget jeg ikke har forstået
Avatar billede Slettet bruger
31. august 2002 - 12:45 #12
Det virker fint hos mig. Den printer bare den forkerte side ud, men det har jeg rettet! Her er den færdige kode:

Siden med print-knappen:

<html>
<head>
</head>
<body>
<form>
<input type="button" value="Print" onClick="document.ifr.location.href = 'print.html';">
</form>
<iframe src="about:blank" width="0" height="0" frameborder="0" style="display: none;" name="ifr"></iframe>
</body>
</html>

Siden, der skal printes:

<html>
<head>
</head>
<body onLoad="self.focus(); self.print();">
Dette er siden der skal printes
</body>
</html>
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:07 #13
Jeg har prøvet at kopiere din kode men den printer stadig den forkerte side
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:07 #14
af en eller anden grund
Avatar billede Slettet bruger
31. august 2002 - 13:10 #15
Ikke på min computer. Jeg lægger lige et eksempel ud...

P.S. Du må ikke have to ens spørgsmål åbne på samme tid:
http://www.eksperten.dk/spm/252313
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:12 #16
okay
Avatar billede Slettet bruger
31. august 2002 - 13:13 #17
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:15 #18
den printer stadig bare print knappen
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:15 #19
Meget mærkeligt
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:17 #20
hvad pokker kan der være galt?????
Avatar billede Slettet bruger
31. august 2002 - 13:18 #21
Hvilken browser bruger du? I IE5 bliver den rigtige side udskrevet.
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:19 #22
I.E 6.0
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:22 #23
vi kan holde et netmeeting, så kan du se hvad det er jeg gør
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:22 #24
Så skal jeg bare lige have åbnet på routeren
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:23 #25
Jeg kan ikke lige finde ud af hvilken port(e) det kører på :-)
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:24 #26
hvis du ellers har tid
Avatar billede Slettet bruger
31. august 2002 - 13:24 #27
Nej, nej, jeg foretrækker at gøre det her! :)

Prøv igen, samme link!
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:26 #28
stadig den forkerte side
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:33 #29
det er pænt af dig at hjælpe
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:33 #30
Er du studerende?
Avatar billede Slettet bruger
31. august 2002 - 13:33 #31
Så er jeg blank.
Du kan evt. åbne et popup-vindue, som lukker sig selv, når den har printet. Det burde løs problemet. Men så er siden jo ikke direkte usynlig.
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:35 #32
Hmmmmm
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:36 #33
Det er faktisk meningen at det skal virke i IE 5.0, men det duer jo ikke at det pludeselig ikke virker hvis folk opgradere deres browser
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:39 #34
Siden skal være usynlig
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:43 #35
Det er åbenbart lidt halv svært
Avatar billede Slettet bruger
31. august 2002 - 13:44 #36
Et sidste desperat forsøg:
http://www.friserverplads.dk/phoenixv/testframe.html
Denne gang bruger jeg ikke iframes, men bare normale frames.
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:47 #37
Det virkede. Hvad gjorde du?
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:47 #38
og hvor sætter jeg penge ind på din konto
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:47 #39
LOL
Avatar billede Slettet bruger
31. august 2002 - 13:48 #40
Thank God! Gad vise, hvorfor IE6 ikke ville med iframes...
Nå, nu er alle vist glade! :)
Avatar billede Slettet bruger
31. august 2002 - 13:48 #41
gad vise = gad vide
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:49 #42
de sider jeg skal printe kan jeg jo bare ikke sætte op sådan
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:50 #43
Jeg kan godt
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:50 #44
Men det er vist noget rod
Avatar billede Slettet bruger
31. august 2002 - 13:51 #45
Hvad mener du med "sætte op sådan"? Hvordan?
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:53 #46
det er jo bare en enkelt side i et frameset jeg vil printe ud
Avatar billede Slettet bruger
31. august 2002 - 13:54 #47
Jeg forstår stadig ikke.
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:55 #48
Det er vist bare fordi jeg ikke er helt så meget inde i det som dig
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:55 #49
Jeg var ikke klar over at man kunne gøre det sådan
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 13:56 #50
Skal siden som blive printet ud stadig se sådan ud
Avatar billede Slettet bruger
31. august 2002 - 13:56 #51
OK, men er der så mere, du vil have hjælp til foreløbig?
Avatar billede Slettet bruger
31. august 2002 - 13:57 #52
Nå, nu smutter jeg for i dag.
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 14:00 #53
Ja der er. Men du skal have tak for din tid
Avatar billede mikmakmuk Nybegynder
31. august 2002 - 14:02 #54
Det duer ikke at gøre det på den måde i mit tilfælde :-(
Avatar billede Slettet bruger
01. september 2002 - 14:26 #55
Hvorfor det? Det kan vel være ligegyldigt, om du bruger frames eller iframes!?
Avatar billede mikmakmuk Nybegynder
01. september 2002 - 18:45 #56
det kan det da ikke. Hvis jeg bruger frames skal jeg jo have en side som indeholder framesettet, siden med knappen og siden som skal printes. Med en IFrame kan jeg nøjes med de to sidste
Avatar billede mikmakmuk Nybegynder
01. september 2002 - 18:47 #57
eller er det forkert forstået
Avatar billede mikmakmuk Nybegynder
02. september 2002 - 08:39 #58
Det virker på mit arbejde, altså det første med Iframen. Det er en IE 5.0 vi kører her. Meget mærkeligt
Avatar billede Slettet bruger
02. september 2002 - 14:50 #59
Jeg har fundet ud af, hvorfor det kun virker i IE5 eller derunder. Det er en lidt teknisk historie. I IE4 og 5 (og for den sags skyld også NS6+) opfattes iframes som vindue-elementer, dvs. som sider for sig selv. Men i IE5.5+ opfattes dokumentet i iframen i stedet som en del siden med iframen, og når iframen er skjult, vil den derfor ikke blive printet. Hvis du kender PHP er det lidt som include. Normale frames er dog vindue-elementer, så derfor virker det fint med dem.

Hvad er problemet med at lave én ekstra frameset-side? Den fylder højst et par kb!?
Avatar billede mikmakmuk Nybegynder
02. september 2002 - 19:04 #60
Problemstillingen er blevet lidt mere kompleks :-) Det der med at printe en skjult side er faldet lidt til jorden. Det hænger sammen med at den side jeg skal printe er genereret af en pagegenerator. Det betyder at jeg ikke bare kan lave en anden :-( Det er for vildt at du har fundet et svar på hvorfor det ikke virkede i IE6. Jeg er sku' ikke helt klar over hvordan jeg skal komme videre. Det der med at printe er vist lidt bøvlet :-(
Avatar billede mikmakmuk Nybegynder
02. september 2002 - 19:14 #61
Det her er i princippet hele miseren

<table width='810'>
<tr>
<td width='405' align='right'>aaaaaaaaaaaaaaaaaaaaaa<br>aaaaaaaaaaaaaaaa123</td>
<td width='405' align='right'>bbbbbbbbbbbbbbbbbbbbbb<br>bbbbbbbbbbbbbbbb456</td>
</tr>
</table>

Hvordan laver jeg en knap som ikke kommer med på printet, men som printer siden ud så den passer til et A4 ark.
Avatar billede Slettet bruger
04. september 2002 - 14:38 #62
Du skal bruge media-atrributten, som jeg har sagt i et af dine andre spørgsmål.
Avatar billede Slettet bruger
04. september 2002 - 14:39 #63
I dit "print.css"-stylesheet skriver du bare:

.knap {
display: none;
}

Og på siden:

<input type="button" class="knap" onClick="self.print();">
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester