Mike89: getelementbytagname frage

Hi

Ich habe auf meiner Homepage 2 Tabellen.

Um die Zellen (td) der Tabellen mittels Javascript/DOM zu ändern benutze ich zurzeit document.getElementsByTagName("td")[i]

i ist der Index der Zellen, so kann ich auf eine x beliebige zugreifen.

zB Tabelle eins 10 Zellen
i = 0, 1, 2, 3, 4, 5, 6, 7, 8, 9

Tabelle zwei 5 Zellen
i = 10, 11, 12, 13, 14

Meine Frage ist nun:
Wenn zwischen den zwei Tabellen noch eine dritten Tabelle plaziert wird bei der die Zellen variieren verändert sich auch immer das i mit den ich auf meine Zellen der zweiten Tabelle zugreifen will(10,11,12,13,14)

Gibt es die Möglichkeit nur die Zellen einer bestimmten Tabelle abzurufen?

danke
mfg Mike

  1. Hallo,

    Um die Zellen (td) der Tabellen mittels Javascript/DOM zu ändern benutze ich zurzeit document.getElementsByTagName("td")[i]

    damit hast du, wie du selbst schon festgestellt hast, die td-Elemente im gesamten Dokument fortlaufend numeriert und indiziert.

    Gibt es die Möglichkeit nur die Zellen einer bestimmten Tabelle abzurufen?

    Natürlich: Wende getElementsByTagName() nicht auf das gesamte document-Objekt an, sondern nur auf das Element (hier: die Tabelle), das du untersuchen willst.

    Ciao,
     Martin

    --
    Es gibt Tage, da gelingt einem einfach alles.
    Aber das ist kein Grund zur Sorge; das geht vorbei.
    1. Hallo,

      Um die Zellen (td) der Tabellen mittels Javascript/DOM zu ändern benutze ich zurzeit document.getElementsByTagName("td")[i]

      damit hast du, wie du selbst schon festgestellt hast, die td-Elemente im gesamten Dokument fortlaufend numeriert und indiziert.

      Gibt es die Möglichkeit nur die Zellen einer bestimmten Tabelle abzurufen?

      Natürlich: Wende getElementsByTagName() nicht auf das gesamte document-Objekt an, sondern nur auf das Element (hier: die Tabelle), das du untersuchen willst.

      Ciao,
      Martin

      Also wenn ich der Tabelle zB die id "tabelle1" gebe funktioniert das so?
      ...ich kann es gerade nicht ausprobieren :(

      document.getElementById('tabelle1').getElementsByTagName('td')

      1. Hallo Mike,

        Hallo,
        [...]
        Ciao,
        Martin

        bitte keine Vollzitate ("TOFU"). Das erweckt den Eindruck von Gleichgültigkeit, macht die Beiträge schlechter lesbar und bläht das Archiv unnötig auf. Zitiere das, was du brauchst, nicht mehr.

        Wende getElementsByTagName() nicht auf das gesamte document-Objekt an, sondern nur auf das Element (hier: die Tabelle), das du untersuchen willst.
        Also wenn ich der Tabelle zB die id "tabelle1" gebe funktioniert das so?
        document.getElementById('tabelle1').getElementsByTagName('td')

        Das ist eine Möglichkeit von vielen. Wenn die gesuchte Tabelle keine ID hat, könntest du auch die Tabellen mit getElementsByTagName() quasi vorselektieren, und dann darin suchen:

        document.getElementsByTagName("table")[x].getElementsByTagName("td")[y]

        Ciao,
         Martin

        --
        Arzt:    Gegen Ihr Übergewicht hilft wohl nur noch Gymnastik.
        Patient: Sie meinen, Kniebeugen und so?
        Arzt:    Nein, Kopfschütteln. Immer dann, wenn Ihnen jemand was zu essen anbietet.
        1. Hi Martin.

          Zitiere das, was du brauchst, nicht mehr.

          Wenn er das nicht mehr zitiert, werden die Beiträge aber noch schlechter lesbar.

          ;-)

          Viele Grüße,
          der Bademeister

          1. Mahlzeit Bademeister,

            Zitiere das, was du brauchst, nicht mehr.

            Wenn er das nicht mehr zitiert, werden die Beiträge aber noch schlechter lesbar.

            Huiiiii - da wären wir ja wieder beim Thema "Was ist an Übersetzungssoftware so schwer?" ...

            MfG,
            EKKi

            --
            sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
          2. Hallo,

            Zitiere das, was du brauchst, nicht mehr.
            Wenn er das nicht mehr zitiert, werden die Beiträge aber noch schlechter lesbar.

            autsch, erwischt. :-)
            Ja, an der richtigen Stelle hätte ein Punkt anstelle eines Kommas die Mehrdeutigkeit ausgeschlossen.

            "Stell dir vor, ich rauche nicht mehr."
            "Echt nicht? Ist ja toll!"
            "Ja, aber auch nicht weniger."

            ;-)

            Genau.

            Schönen Tag noch,
             Martin

            --
            Die letzten Worte der Challenger-Crew:
            Lasst doch mal die Frau ans Steuer!
      2. document.getElementById('tabelle1').getElementsByTagName('td')

        Das geht so, darüber hinaus haben Tabellen noch mehr http://de.selfhtml.org/javascript/objekte/htmlelemente.htm#table@title=Eigenschaften z.b. rows[]

        Struppi.