Harlequin: spaltenorientierte Tabelle

Hi,

ich stehe hier vor einem Problem, für dass es vermutlich keine Lösung gibt:

Ist es irgendwie möglich eine Tabelle spaltenorientier aufzubauen? Normalerweise ist in HTML das gruppierende Element die Zeile. Allerdings benötige ich für Manipulationen über Javascript eine Gruppierung über die Spalten um diese ein- und auszublenden oder die reihenfolge zu ändern. Meine derzeitige Lösung ist eine einzelne Tabelle pro Spalte in einem DIV, die über float nebeneinander angeordnet sind. Dies hat aber den Nachteil, dass die Zeilenhöhen nicht mehr untereinander abhängig sind.

Kennt jemand eine bessere Lösung für das Problem?

Gruß,

Harlequin

  1. Hallo Harlequin.

    Allerdings benötige ich für Manipulationen über Javascript eine Gruppierung über die Spalten um diese ein- und auszublenden oder die reihenfolge zu ändern.

    Dann sprich doch mit JS immer das td-Element mit dem Index i in der jeweiligen Zeile an. Der Einfachheit halber rate ich dir hierfür http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#table@title=rows und http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#tr@title=cells zu verwenden.

    Mit einer Schleife kannst du so recht einfach auf alle Tabellenzellen an gleicher Position zugreifen.

    Einen schönen Mittwoch noch.

    Gruß, Ashura

    --
    sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
    mathbr:del.icio.us/ mathbr:w00t/
    1. Hi,

      Dann sprich doch mit JS immer das td-Element mit dem Index i in der jeweiligen Zeile an. Der Einfachheit halber rate ich dir hierfür http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#table@title=rows und http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#tr@title=cells zu verwenden.

      Mit einer Schleife kannst du so recht einfach auf alle Tabellenzellen an gleicher Position zugreifen.

      Mit Elementzugriffen in Schleifen hatten wir hier schon eine Menge schlechter Erfahrungen. Beim IE geht da ziemlich schnell die Performance in den Keller. Ob die Zugriffe über Rows und Cells schneller gehen als mit getElementById müsste man ausprobieren, ich erhoff mir da aber nicht sehr viel. Im schlimmsten Fall muss ich halt 200 Zellen in andere Spalten hängen (insgesamt 8 Spalten und bis zu 31 Zeilen).

      Gruß,

      Harlequin

      1. Hallo Harlequin.

        Beim IE geht da ziemlich schnell die Performance in den Keller. Ob die Zugriffe über Rows und Cells schneller gehen als mit getElementById müsste man ausprobieren, ich erhoff mir da aber nicht sehr viel.

        Alternativen sind mir leider nicht bekannt, ein tc-Element (table column) gibt es in HTML nicht.

        Einen schönen Mittwoch noch.

        Gruß, Ashura

        --
        sh:( fo:} ch:? rl:( br: n4:~ ie:{ mo:| va:) de:> zu:} fl:( ss:) ls:[ js:|
        mathbr:del.icio.us/ mathbr:w00t/
        1. Hi,

          Alternativen sind mir leider nicht bekannt, ein tc-Element (table column) gibt es in HTML nicht.

          Leider. Da ich aber grad auch festgestellt hab, dass sich durch meinen Konstrukt die Tabulator-Reihenfolge der Editfelder in den Tabellen ändert (von zeilenweise auf spaltenweise) werde ich jetzt doch mal einen Versuch mit dem Rows-Array wagen. Vielleicht hab ich ja Glück und der Zugriff darauf ist doch schnell genug.

          Gruß,

          Harlequin

        2. Hello out there!

          ein tc-Element (table column) gibt es in HTML nicht.

          ?? Es gibt col.

          Der IE blendet bei col#foo {display: none} die Spalte mit der ID 'foo' aus, Firefox aber nicht.

          See ya up the road,
          Gunnar

          --
          “Remember, in the end, nobody wins unless everybody wins.” (Bruce Springsteen)