Marcus: Druckansicht

Hallo, ich habe eine HTML-Seite mit einer Tabelle. Die letzte Zeile der Tabelle beinhaltet einen iframe (Damit ich scrollen kann). Der Inhalt (Meßwerte in Tabellenformat) des iFrames ändert sich ständig (Anzahl der Zeilen). Ich habe eine JS-Funktion die mir eine Druckansicht erstellt, d.h. unnötige Elemente werden ausgeblendet. Jetzt ist es so, das ich einen Screenshot bekomme mit einem Teil meines iFrames. Ich möchte aber, das in meiner Druckansicht der ganze Inhalt des iFrames gedruckt bzw angezeigt wird ohne Scrollbalken ! Wie kann ich die Tabelle oder den iFrame in meiner JS-Funktion ändern, damit der ganze Inhalt gedruckt wird ? Danke für Eure Hilfe !

Hier meine JS-Funktion für die Druckansicht:

</style>
<script type="text/javascript">
<!--
function printPage() {
  var NP = document.getElementsByName('NoPrint');
  var NPL = NP.length;

for(var i=0; i<NPL;i++){
    NP[i].style.display = 'none';
  }

window.print();

for(var j=0; j<NPL;j++){
    NP[j].style.display = 'block';
  }
}
//-->
</script>

Hier meine Tabellenzeile mit dem iFrame:

<TD COLSPAN=6 HEIGHT=200><FONT SIZE="3" FACE="Arial">
<iframe name="iframe" src="tab_str1.html" height=100% width=100% scrolling="yes" color="#000000" frameborder="0"></iframe></TD>

Gruß Marcus

  1. Hi,

    Hallo, ich habe eine HTML-Seite mit einer Tabelle.

    hast Du eine HTML-Seite mit tabellarischen Daten, oder hast Du eine Seite, deren Code HTML ähnlich sieht und dessen Layout durch Missbrauch des <table>-Elements zu erstellen versucht wurde?

    Die letzte Zeile der Tabelle beinhaltet einen iframe

    Wären es tabellarische Daten, enthielte _jede_ Zeile einen <iframe>. Du missbrauchst also Tabellen für Layoutzwecke.

    (Damit ich scrollen kann).

    Jedes einzelne HTML-Element kann über die CSS-Eigenschaft overflow scrollbar gemacht werden. Statt dessen einen <iframe> einzusetzen ist so ziemlich das Schlimmste, was Du Dir, Deinen Besuchern und Suchmaschinen antun kannst.

    Der Inhalt (Meßwerte in Tabellenformat) des iFrames ändert sich ständig (Anzahl der Zeilen).

    Aha. Mit anderen Worten: Du hast die Seite mit einer Tabelle erstellt, was falsch ist, und anstatt darin eine Tabelle unterzubringen, die richtig ist, einen Frame eingebunden, was falsch ist.

    Ich habe eine JS-Funktion die mir eine Druckansicht erstellt, d.h. unnötige Elemente werden ausgeblendet.

    JavaScript ist hierzu vollkommen überflüssig. CSS erlaubt es, Style-Angaben speziell für das Printmedium mitzuliefern.

    Jetzt ist es so, das ich einen Screenshot bekomme mit einem Teil meines iFrames. Ich möchte aber, das in meiner Druckansicht der ganze Inhalt des iFrames gedruckt bzw angezeigt wird ohne Scrollbalken ! Wie kann ich die Tabelle oder den iFrame in meiner JS-Funktion ändern, damit der ganze Inhalt gedruckt wird ?

    Korrigiere die Struktur Deiner Seite und verwende ein Druck-Stylesheet. Verzichte auf JavaScript.

    Danke für Eure Hilfe !

    Übrigens plenkst Du.

    Cheatah

    --
    X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
    X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
    X-Will-Answer-Email: No
    X-Please-Search-Archive-First: Absolutely Yes
    1. Hallo, den iFrame habe ich eingefügt, weil meine Daten in einer eigenen HTML-Datei stehen. Diese HTML-Datei beinhaltet Meßwerte die in Tabellenformat (Zeilen und Spalten) angeordnet sind. Die HTML-Datei erzeuge ich mir immer aktuell neu (aus einem C-Programm) auf meinem Server und kann mal mehr und mal weniger Zeilen (bis 255) haben. Damit meine Tabellenzeile in der ersten HTML-Seite immer eine feste Größe hat habe ich einen iFrame mit Scrollbalken eingefügt. Das Funktioniert sehr gut, d.h. ein Teil meiner Tabelle ist statisch und die letzte Zeile mit den Meßweten ist dynamisch. Nur wenn ich Drucke bekomme ich nicht den kompletten Inhalt des iFrames, sondern nur den gerade angezeigten Teil. Hat jemand eine Idee wie ich für meine Druckansicht den ganzen Inhalt anzeigen kann ? Ich habe mir gedacht, ich müsste an meine Druckansicht die zweite HTML-Seite mit den Meßwerten anhängen oder so.... !?

      Danke

      Marcus

      1. @@Marcus:

        Damit meine Tabellenzeile in der ersten HTML-Seite immer eine feste Größe hat habe ich einen iFrame mit Scrollbalken eingefügt.

        Fällt dir keine bessere Methode ein, wie du die Messwerte auf die Seite bekommst, ohne sie in einen Iframe zu zwängen?

        Live long and prosper,
        Gunnar

        --
        „Das Internet ist ein großer Misthaufen, in dem man allerdings auch kleine Schätze und Perlen finden kann.“ (Joseph Weizenbaum)
        1. Hallo, was habt Ihr nur gegen meinen iFrame ? Die Sache funktioniert sehr gut ! Hat denn keiner einen Tip oder Vorschlag wie ich mein Problem mit dem Drucklayout lösen kann ? Ich bin nicht der Profi, natürlich gibt es Wege meine Seite besser zu programmieren oder zu optimieren !

          Danke.

          Marcus

          1. Hallo, was habt Ihr nur gegen meinen iFrame ?

            Nichts, aber dein Problem wirst du damit nicht lösen können.

            Struppi.

            1. Hallo, ich habe eine Lösung gefunden und gleichzeitig ein zweites Problem gelöst. Ich kann jetzt meine Meßwerte mit den Kopfdaten drucken und habe auch gleichzeitig eine Möglichkeit die Daten auf dem PC zu speichern.

              Danke.

              Marcus

              1. Hi,

                Hallo, ich habe eine Lösung gefunden und gleichzeitig ein zweites Problem gelöst.

                und zwar wie?

                Cheatah

                --
                X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
                X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
                X-Will-Answer-Email: No
                X-Please-Search-Archive-First: Absolutely Yes
                1. Hallo, ich habe mein C-Programm auf dem Server erweitert. Ich habe jetzt über dieses C-Programm die Mögichkeit meinen HTML bzw. Javascript-Code (Anzeigen in Tabelle, Drucken oder Speichern) zu ändern. Funktioniert sehr gut, auch mit dem iFrame!

                  Marcus

          2. Hi,

            Hallo, was habt Ihr nur gegen meinen iFrame ? Die Sache funktioniert sehr gut !

            offenbar nicht, sonst würdest Du hier ja nicht fragen.

            Hat denn keiner einen Tip oder Vorschlag wie ich mein Problem mit dem Drucklayout lösen kann ?

            _Noch_ einen? Es gibt keinen, der auch nur im Ansatz so gut wäre wie der, den ich Dir schon gegeben habe.

            Ich bin nicht der Profi, natürlich gibt es Wege meine Seite besser zu programmieren oder zu optimieren !

            Optimieren, hm. Bisher hast Du Deine Seite pessimiert: Du hast das Dir schlechtestmögliche daraus gemacht. Zwar magst Du es nicht hören wollen, aber das ändert nichts an der Tatsache, dass Dir jetzt genau dies im Wege steht.

            Bring Deine Seite in Ordnung, dann hast Du keine Probleme mehr. Lasse sie so wie sie ist, und Deine Probleme bleiben bestehen. Es ist Deine Wahl.

            Cheatah

            --
            X-Self-Code: sh:( fo:} ch:~ rl:° br:> n4:& ie:% mo:) va:) de:] zu:) fl:{ ss:) ls:~ js:|
            X-Self-Code-Url: http://emmanuel.dammerer.at/selfcode.html
            X-Will-Answer-Email: No
            X-Please-Search-Archive-First: Absolutely Yes