Hans: effektive Zellenbreite aus HTML-Tabelle lesen

Hallo !

Ich habe zwei Tabellen. Die erste stellt den Header dar, die zweite ist in einem DIV, das eine bestimmte Groesse hat. Die Groesse des DIV ist kleiner als die Tabelle, dadurch erscheint am Seitenrand ein Scrollbar und ich kann den Inhalt der Tabelle hoch und runter scrollen. Dadurch, dass die erste Tabelle nur die Spaltenkoepfe hat, sieht es so aus, als ob ich eine "normale" Tabelle habe, bei der ich bis zur zigtausendsten Spalte scrollen kann, ohne daß ich immer hoch muß um nachzugucken, wie denn die Spalte heißt.

Nun ist es leider so, daß die Breite der Header-Spalten nicht gleich der "Datenspalten" ist und somit nicht übereinanderstehen.

Ich mache zwar "document.getElementById(Header_Spalte).width=document.getElementById(Daten_Spalte).width aber das funktioniert nur, wenn ich vorher bei der Datenspalte width="97" oder so angebe. Ich möchte aber wissen, wieviel Platz die Datenspalte tatsächlich braucht. Bei width="auto" bekomme ich gar keine Info über die Breite.

Wer kann mir da helfen ?

Gruß

Hans

  1. Hallo Hans,

    vieleicht hilft Dir der Artikel von gernot weiter.

    Gruß, Jürgen

    1. Hallo Jürgen,

      Puh, sehr verwirrend :)

      Aber das eigentliche Problem wird dadurch nicht gelöst. Denn wenn im oberen rechten Frame der Titel "Bla" heißt und die Spalte im unten rechten Frame "blablablablablablabla" breit ist, dann paßt die Spaltenbreite von Kopf nicht mit der Breite vom Inhalt überein.

      Aber vielen Dank für die Info.

      Gruß

      Hans

  2. Hi,

    Ich mache zwar "document.getElementById(Header_Spalte).width=document.getElementById(Daten_Spalte).width aber das funktioniert nur, wenn ich vorher bei der Datenspalte width="97" oder so angebe.

    probier mal:
    document.getElementById('Header_Spalte').style.width=document.getElementById('Daten_Spalte').offsetWidth;

    freundliche Grüße
    Ingo

    1. Hi,

      sorry, ich vergaß am Ende natürlich: ....offsetWidth+'px';

      freundliche Grüße
      Ingo

    2. Hi,

      Ich mache zwar "document.getElementById(Header_Spalte).width=document.getElementById(Daten_Spalte).width aber das funktioniert nur, wenn ich vorher bei der Datenspalte width="97" oder so angebe.
      probier mal:
      document.getElementById('Header_Spalte').style.width=document.getElementById('Daten_Spalte').offsetWidth;

      freundliche Grüße
      Ingo

      Hi Ingo,

      danke, das war's !

      Gruß

      Martin