getElementById ~ auf mehrer IDs zugreifen?

  • #1
C

Cledith

Bekanntes Mitglied
Themenersteller
Dabei seit
04.11.2001
Beiträge
1.210
Reaktionspunkte
0
Hallo,
ich poste das hier noch im Forum (auch wenn ich weiß, dass PCDReitz eh der einzige ist der hier antwortet ;D) falls andere mal ähnliches Problem haben.

Ich möchte auf die CSS Eigenschaft Border einer Zelle zugreifen (td) per getElementbyid. Jetzt benutze ich die id aber eigentlich nicht als id sondern als class, damit ich gleich alle ansprechen kann.

Wenn ich jedoch die Anweisung
Code:
document.getElementById(headline).style.borderBottomWidth = document.form1.tabborder.value;
gebe, dann wirkt dies nur auf das Element, dass als erstes die ID headline trägt. Alle folgenen Elemente werden nicht berücksichtigt. Auch eine Schleife konnte dieses Problem noch nicht lösen.

Kann mir einer sagen, wie gleich auf alle bestimmten TDs zugreifen kann (headline ist eine Klasse für Zellen in einer Tabelle)?

Vielen Dank,
Cledith
 
  • #2
hi,

man kann tabellen auch mit <thead>, <tfoot> und <tbody> gliedern.
wenn die zu ändernden tds alle im <tbody> sind brauchst du, glaube ich, nur den anzusprechen und die änderung wird auf alle elemente in dem bereich übertragen.

hab's noch nicht getestet aber schau mal hier:


gruß
nico
 
  • #3
Hi,
hat mein Wink mit dem Zaunpfahl doch was gebracht? ;D

Das würde meinem Problem schon mal entgegen kommen, jedoch es noch nicht lösen. Problem ist ja eigentlich, dass ich von mir aus im TBody Teil verschiedene ids/ classes habe. Um CSS sinnvoll nutzen zu können muss ich die ja nun alle in eine Klasse oder ID packen. Jetzt habe ich das so gelöst, dass ich jedem Element ne eigene ID gegeben habe und eine gemeinsame Klasse.

Dies ist jedoch insofern ein bischen doof, als dass ich
a) immer ID und Class habe und
b) das beim Ansprechen per JS zwar durch eine Schleife einfach geregelt werden kann, dies jedoch trotzdem umständlich ist.

Gibt es Alternativen??
Ebenso vielen Dank für alle weiteren Antworten sowie für die bereits Vorhandenen.
Cledith
 
  • #4
Hi

IDs müssen im ganzen HTML Dokument eindeutig sein, daher kannst du da auch nicht mehrere ansprechen.

Die einzige Idee die mir da kommen würde alle td elemente in einer Schleife durchlaufen zulassen und dann auf das Attribut Class mit dem gewünschten Wert prüfen lassen.

Gruß, Michael
 
  • #5
Hi,
das hatte ich mir gedacht. :(

Deine Idee finde ich nicht schlecht.. hmm.. für zukünftige Dokumente werde ich das auf jeden Fall mal in Erwegung ziehen, habe aber jetzt keine Lust wieder alles zu verändern ;D

Ich habe jetzt wie oben geschrieben gemacht. Habe den allen eine ID gegeben, wobei die ID aus Wort und Zahl besteht. In einer Schleife lasse ich dann einfach alle IDs mit selbigem Namen durchlaufen.

Vielen Dank an Alle!
Mfg,
Cledith
 
Thema:

getElementById ~ auf mehrer IDs zugreifen?

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.963
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben