Avatar billede pcl Nybegynder
28. august 2001 - 15:31 Der er 35 kommentarer og
2 løsninger

print og frames

jEG HAR EN SIDE MED TRE FRAMES.

en top frame en midterframe og en bund frame.

i bundframen har jeg et print link. det der skal ske er at når man klikker på print linket skal alt indhold io midterframen sendes til printeren.

Er der nogen der kan hjælpe?
Avatar billede nute Nybegynder
28. august 2001 - 15:34 #1
<a href=\"java script:void(document.framenavn.document.print());\">Print</a>

/nute

Avatar billede Slettet bruger
28. august 2001 - 15:34 #2
function udskrivMidt() {
top.frames[\"midterFrame\"].focus()
top.frames[\"midterFrame\"].print()
}

P.S. http://www.eksperten.dk/spm/102862
Avatar billede Slettet bruger
28. august 2001 - 15:34 #3
D\'OH! For sent igen! :-)
Avatar billede pcl Nybegynder
28. august 2001 - 15:36 #4
øhm.

document.framenavn.document

er der ikke noget galt her?

mht. framenavn skriver jeg så bare navnet på min frame eller skrives der frames[1]
Avatar billede nute Nybegynder
28. august 2001 - 15:39 #5
bytt ut framenavn med navnet på den frame du vil skrive ut
Avatar billede pcl Nybegynder
28. august 2001 - 15:42 #6
det virker da ikke en skid.
Avatar billede Slettet bruger
28. august 2001 - 15:42 #7
Prøv min, selv om nute\'s ser okay ud...
Avatar billede nute Nybegynder
28. august 2001 - 15:43 #8
:) det var også derfor jeg ikke har postet et svar. phoenixv sin løsning bør fungere

/nute
Avatar billede pcl Nybegynder
28. august 2001 - 15:43 #9
jeg har prøvet , der er ingen af jeres ider der virker.
Avatar billede pcl Nybegynder
28. august 2001 - 15:45 #10
det eneste der sker er at midterframen skifter indhold til det der er i bundframen.
Avatar billede Slettet bruger
28. august 2001 - 15:45 #11
Det forstår jeg ikke! Har du husket at udskifte \"midterFrame\" begge steder i scriptet? Og har du husket at skrive det i gåseøjne(\")?
Avatar billede Slettet bruger
28. august 2001 - 15:46 #12
Hvilken browser bruger du?
Avatar billede nute Nybegynder
28. august 2001 - 15:46 #13
post din link, det kan være det er noe \"galt\" med den...
Avatar billede Slettet bruger
28. august 2001 - 15:47 #14
Ja, eller send noget HTML!
Avatar billede pcl Nybegynder
28. august 2001 - 15:48 #15
her framesettet:

<frameset  rows=\"148,*,41\">
    <frame name=\"top\" src=\"top.html\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" noresize>
    <frame name=\"main\" src=\"søgning.html\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"auto\" frameborder=\"0\" noresize>
    <frame name=\"bund\" src=\"bund.html\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" noresize>
</frameset>
</html>


her er bundframen:

<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
<html>
<head>
<link type=\"text/css\" href=\"dli.css\" rel=\"stylesheet\">
<script language=\"javascript\">
function udskrivMidt() {
top.frames[2].focus()
top.frames[2].print()
}

</script>
</head>
<body>
<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"  class=\"td1\">
<tr>
    <td class=\"bottomframe\"><img src=\"grafik/bottomframe_logo.gif\" width=\"235\" height=\"36\" alt=\"\"></td>
    <td class=\"bottomframe\" align=\"right\"><a href=\"#\" onclick=\"udskrivMidt\" target=\"main\"><img src=\"grafik/bottomframe_printicon.gif\" width=\"39\" height=\"41\" alt=\"\" border=\"0\"></a><a href=\"help.html\" target=\"main\"><img src=\"grafik/bottomframe_helpicon.gif\" width=\"63\" height=\"41\" alt=\"\" border=\"0\"></a></td>   
</tr>
</table>
</body>
</html>
Avatar billede nute Nybegynder
28. august 2001 - 15:51 #16
Bytt ut:

<a href=\"#\" onclick=\"udskrivMidt\" target=\"main\">

med

<a href=\"java script:void(udskrivMidt());\">

Du bør gjerne bytte ut

top.frames[2].focus()
top.frames[2].print()

med

top.frames[1].focus()
top.frames[1].print()

hvis dt er den andre frame i ditt frameset du vil skrive ut

/nute
Avatar billede pcl Nybegynder
28. august 2001 - 15:51 #17
eller

<script language=\"javascript\">
function udskrivMidt() {
top.frames[\"main\"].focus()
top.frames[\"main\"].print()
}

</script>

det har jeg også prøvet


Avatar billede Slettet bruger
28. august 2001 - 15:51 #18
OK, det er fordi, at du har en frame, der hedder \"top\". Ændr navnet, eller brug denne kode i stedet:

function udskrivMidt() {
parent.frames[2].focus()
parent.frames[2].print()
}
Avatar billede Slettet bruger
28. august 2001 - 15:52 #19
Nårh jo, det hedder frames[1] ikke frames[2] !!!
nute>> tak!
Avatar billede pcl Nybegynder
28. august 2001 - 15:53 #20
Der kommer en runtimne error.

jeg bruger en ie version 5.5
Avatar billede pcl Nybegynder
28. august 2001 - 15:55 #21
debuggeren kører og en fil der hedder: preview.dlg åbnes

Formentlig ie´s normale print funktion.

det er fanmde for meget, var drenge.
Avatar billede Slettet bruger
28. august 2001 - 15:57 #22
Det forstår jeg minus af! Her er din kode omskrevet:

her framesettet:

<frameset  rows=\"148,*,41\">
    <frame name=\"top\" src=\"top.html\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" noresize>
    <frame name=\"main\" src=\"søgning.html\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"auto\" frameborder=\"0\" noresize>
    <frame name=\"bund\" src=\"bund.html\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" noresize>
</frameset>
</html>


her er bundframen:

<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 Transitional//EN\">
<html>
<head>
<link type=\"text/css\" href=\"dli.css\" rel=\"stylesheet\">
<script language=\"javascript\">
function udskrivMidt() {
parent.frames[\"main\"].focus()
parent.frames[\"main\"].print()
}

</script>
</head>
<body>
<table width=\"100%\" cellspacing=\"0\" cellpadding=\"0\" border=\"0\"  class=\"td1\">
<tr>
    <td class=\"bottomframe\"><img src=\"grafik/bottomframe_logo.gif\" width=\"235\" height=\"36\" alt=\"\"></td>
    <td class=\"bottomframe\" align=\"right\"><a href=\"java script:udskrivMidt()\" target=\"main\"><img src=\"grafik/bottomframe_printicon.gif\" width=\"39\" height=\"41\" alt=\"\" border=\"0\"></a><a href=\"help.html\" target=\"main\"><img src=\"grafik/bottomframe_helpicon.gif\" width=\"63\" height=\"41\" alt=\"\" border=\"0\"></a></td>   
</tr>
</table>
</body>
</html>
Avatar billede Slettet bruger
28. august 2001 - 15:58 #23
Fjern target=\"main\" i linket, der skal udskrive siden.
Avatar billede Slettet bruger
28. august 2001 - 15:58 #24
Åh nej, nu løb tiden fra mig igen!! Vi ses i morgen!
Avatar billede nute Nybegynder
28. august 2001 - 15:59 #25
du har ikke gjort alt jeg ba deg om... bytt ut:

<a href=\"java script:udskrivMidt()\" target=\"main\">

med denne:

<a href=\"java script:void(udskrivMidt());\">
Avatar billede pcl Nybegynder
28. august 2001 - 16:01 #26
det har jeg gjort
Avatar billede olebole Juniormester
28. august 2001 - 16:03 #27
Næææhhh....men du kan aldrig bruge et skandinavisk tegn i filnavnet på et HTML-dokument. Mon ikke \'søgning.html\' er det, der får browseren til at brække sig?

nute >> \'window.print()\' - hedder det. Derfor er det ikke \'........document.print()\'. Desuden må det helt rigtigt være noget \'top\' eller \'parent\' til at starte med.
/mvh
Avatar billede pcl Nybegynder
28. august 2001 - 16:05 #28
ændring af \'søgning.html\' til soegning.html gør ingen forskel
Avatar billede jakoba Nybegynder
28. august 2001 - 16:22 #29
Den frame du har der hedder  top  bør du give et andet navn.

Derefter er det muligvis unødvendigt at ændre top til parent der hvor du adressererer rammen:

<script language=\"javascript\">
function udskrivMidt() {
parent.frames[\"main\"].focus()
parent.frames[\"main\"].print()
}
</script>

men alligevel lidt sikrere i tilfælde af at din side bliver loadet ind i et frameset.

mvh JakobA
Avatar billede pcl Nybegynder
28. august 2001 - 17:01 #30
det lader til at dette her ikke en gangkan lade sig gøre selvom det foregår i den aktuelle frame

<a href=\"#\" onclick=\"window.print(this);\"><img src=\"grafik/bottomframe_printicon.gif\" width=\"39\" height=\"41\" alt=\"\" border=\"0\"></a>
Avatar billede pcl Nybegynder
28. august 2001 - 17:01 #31
den er da helt gal.
Avatar billede jakoba Nybegynder
28. august 2001 - 17:05 #32
ku du lægge det hele ud i en undermappe på di websted. Fejlen må være i dine andre sider?
Avatar billede pcl Nybegynder
28. august 2001 - 17:07 #33
si, det ligger på :

http://www.pcl.dk/dli
Avatar billede jakoba Nybegynder
28. august 2001 - 18:16 #34
Hmm. virker fint i NS4  efter jeg rettede rammenavn top til et lovligt navn

    <frame name=\"dintop\" src=\"top.html\" marginwidth=\"0\" marginheight=\"0\" scrolling=\"no\" frameborder=\"0\" noresize>

men min IE4 vil ikke
udover frameset er der følgende 4 filer:
http://www.pcl.dk/dli/dli.css
http://www.pcl.dk/dli/top.html
http://www.pcl.dk/dli/soegning.html
http://www.pcl.dk/dli/bund.html

det er linien:
    top.frames[\'main\'].print();
i bund.html
der går galt \'objektet understøtter ikke denne metode\' (om print())

det synes jeg nu IE4 plejer at gøre.

men lav om på det rammenavn i din frameset fil.

mvh JakobA
Avatar billede pcl Nybegynder
28. august 2001 - 22:40 #35
sjovt nok virker det hjemme i min egen IE browser, men ikke i den på jobbet. Der må sgu værenoget galt med den.
Avatar billede jakoba Nybegynder
28. august 2001 - 22:45 #36
Det kunne jo tænkes at IE4 blot ikke undestøtter javascripts print funktion. Hvilke IE versioner er de to du har adgang til?
Avatar billede pcl Nybegynder
29. august 2001 - 09:00 #37
begge versioner er ie 5.5
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