18. oktober 2005 - 23:55Der er
9 kommentarer og 1 løsning
Print venlig side
Hej Gutter og Inder
Hvis jeg har en side hvor jeg evt viser en liste mm. fra en DB, hvordan kan jeg lave et link hvor ved tryk på dette link så kan man printe en "Print venlig side" her tænker jeg på så man evt få en liste some opsætnings mæssigt er lidt anderledes end den på siden.
Det kunne jo være der var en masse info man ikke vil skrive ud eller farver og så ved at klikke Print venlig side så udskriver den KUN listen med evt navne i sort/hvid og i en lidt pæne opsætning.
Lad os sige jeg har en DB der hedder user.mdb med tabellen Bruger med "navn", "alder", "Adresse", "by", "post nr" nu vil jeg godt, når en bruger trykker på linket have at den trækker alt ud på nær alder og sætter det op i en liste, " det skal siges at på selve siden står adressen ikke der står kun by" og derfor vil jeg have at adressen skal på hvis man vil lave en "print venlig liste" lidt som hvis man laver en telefon liste i Word i en tabel.
kan det lade sig gøre og hvordan så den ved at den kun skal trække de valgte info's ud og udskrive i sort/hvid.
Den printvenlige side skal kodes på samme måde som enhver af dine andre ASP-sider. Det vigtige er her blot at du netop formatere siden med henblik på at den skal være - ja - printvenlig. :^)
Siden aktiveres på samme måde som enhver anden af dine ASP-sider, nemlig ved et klik på et link. Dette link vil som regel være placeret på den side som skal kunne serveres i en printvenlig version.
Til sidst, men ikke mindst, er det jo en god ide at print-dialogen vises når dine brugere klikker sig ind på den printvenlige version. Dette gøres ved at tilføje følgende onLoad-kode i sidens body-tag:
hvis du viser farverne osv med et style sheet. Så kan du bruge en javascript mulighed som ikke kræver at alting hentes i databasen. function PrintThisPage() { var sOption="toolbar=yes,location=yes,directories=yes,menubar=yes,"; // sOption+="scrollbars=yes,width=1000,height=800,left=100,top=25";
var sWinHTML = document.getElementById('ctl00_tblContent').innerHTML;
var winprint=window.open("",null,"width=670,status=yes,toolbar=no,menubar=no,location=no,scrollbars=yes,left=0,top=0"); winprint.document.open(); winprint.document.write('<html><body>'); //skriv printer link winprint.document.write('<div id="Div1" align=right><a href=# onclick=window.print()>Udskriv side</a></div>'); winprint.document.write(sWinHTML); winprint.document.write('</body></html>'); //fjern dropdownlister
var sWinHTML = document.getElementById('ctl00_tblContent').innerHTML; det henter at html delen på din side. du skal selvfølgelig bruge et andet ID. Du kan f.eks. lave en div omkring din liste. Hvis det hedder div1 så bruger du var sWinHTML = document.getElementById('div1').innerHTML;
hvad hvis der nu er nogle menuer osv som er på siden mellem html og /html som jeg ikke vil have med men kun den liste man kigger på, kan jeg så bruge det du har vist mig !?
med menuen kan du fjerne dem med et div omkring menuerne. f.eks. et div kaldet menu1. for at fjerne menu1 på den printer venlige side indsætter du winprint.document.getElementById('menu1').style.display = 'none'; efter winprint.document.write('</body></html>'); linien.
beklager meget at jeg ikke har svaret eller givet lyd har haft andet der lige skulle ordnes men MANGE tak til jer begge vil i lægge et svar DR og Nielle !? ^^
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.