Avatar billede mazey Praktikant
23. januar 2006 - 16:54 Der er 4 kommentarer og
1 løsning

Udskriv felter i en form

Hej eksperter..

Jeg har en simpel form som jeg gerne vil have at man skal kunne printe ud inden man godkender det man har skrevet.

Det jeg har indtil videre er:


<form method="post" action="">
    <table width="400" border="0" cellspacing="0" cellpadding="0" align="center" bgcolor="#3e3e3e">
      <tr>
    <td height="20"><span class="toplogin">&nbsp;Overskrift:</span></td>
    <td  height="35" align="center"><input name="head" type="text" class="btns" size="47" value="<?=$head?>"></td>
  </tr>
  <tr>
    <td><span class="toplogin">&nbsp;Indhold:</span></td>
    <td align="center"><textarea name="indhold" cols="47" rows="15" class="btns"></textarea></td>
  </tr>
    <tr>
    <td height="28" colspan="2" bgcolor="#1c1c1c"><input type="submit" name="send" value="Send nyhedsbrev" style="width:80;border:1 solid white;color:white;FONT-WEIGHT:normal;FONT-SIZE:9px;background-color:#3e3e3e;">&nbsp;&nbsp;<input type="submit" name="back1" value="Tilbage" style="width:80;border:1 solid white;color:white;FONT-WEIGHT:normal;FONT-SIZE:9px;background-color:#3e3e3e;"><input type="button" value="Print This Page" onClick="window.print()" /></td>
   
  </tr>
</table>
</form>

Den javascript window.print virker, men den skriver hele siden ud.
Ville bare gerne have den til at skrive de input felter jeg har, ud, så det ser nogenlunde struktureret ud.

Kan det lade sig gøre forholdsvist nemt?
Avatar billede roenving Novice
23. januar 2006 - 17:07 #1
F.eks.

<script type="text/javascript">
function printForm(f){
  var newWin = window.open("","newWin","width=400,height=300");
  var d = newWin.document;
  d.write(f.innerHTML);
  d.close();
  newWin.print();
}
</script>

-- og

<input type="button" value="Print This Page" onClick="printForm(this.form)">

-- dog skal brugeren så selv lukke vinduet !-)

-- absolut utestet !o]

-- og så er det vel en fejl, at du bruger xhtml-lukketags, når du ellers skriver html3.2 ?-)
Avatar billede mazey Praktikant
23. januar 2006 - 17:13 #2
Ja, det er der derhenad... Men den skriver stadig alt andet med... jeg ville bare gerne have den til kun at skrive de 2 input felter ud.... Og det hænder jo at textareaet bliver så langt at man skal scrolle i det... så går man vel glip af noget tekst, ved den måde den printer på nu?

Hvad angår mine html tags så er det meget muligt at det er blandet lidt sammen, men har nu ikke oplevet nogle fejl ved det! :D
Avatar billede mazey Praktikant
23. januar 2006 - 17:14 #3
Og kan man sætte den til selv at lukke vinduet?
Avatar billede roenving Novice
23. januar 2006 - 18:36 #4
Det med at lukke vinduet tænkte jeg også på, men vinduet skal først være færdig med at aktivere udskriften, så der havde jeg umiddelbart ingen gode ideer ...
Avatar billede mazey Praktikant
24. januar 2006 - 14:04 #5
Jeg fik lidt hjælp fra en bekendt og fik lavet et script.
Det ser således ud:
<script type="text/javascript">
function printField() {
  var s = document.theForm.ta.value;
  var regExp=/\n/gi;
  s = s.replace(regExp,'<br>');
  pWin = window.open('','pWin','location=yes, menubar=yes, toolbar=yes');
  pWin.document.open();
  pWin.document.write('<html><head></head><body>');
  pWin.document.write(s);
  pWin.document.write('</body></html>');
  pWin.print();
  pWin.document.close();
  pWin.close();
}
</script>

    <form name="theForm" action="">
<textarea name="ta" rows="20" cols="50">
SKRIV TEXT.
</textarea>
</form>
<a href="#" onclick="printField()">print text</a>

Derfor tillader jeg mig at tage pointene igen.
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