Elemente ansprechen (adressierung)
Jan
- javascript
Hallo,
Wie kann ich per Javascript mehrere Elemente ansprechen. z.b. 2 Checkboxen. Ich möchte, das beide Boxen sich durch einen Klick verändern.
Die Checkboxen sehen so aus:
<input name='checkbox1' type='checkbox' value=''>
<input name='checkbox1' type='checkbox' value=''>
wiso kann ich nicht direkt den Name in Javascript ansprechen. z.b. checkbox1 und dann verändern sich beide Boxen.
Bei mir verändert sich immer nur die erste der Beiden,obwohl sie ja gleich heissen. Ich möchte nicht jeder box einen anderen Namen oder Index geben, da sie dynmisch erzeugt werden, d.h. die Anzahl variiert.
Hallo Jan,
Elemente sprichst Du am besten mit Javascript/DOM an. Im SELFHTML findest du das Kapitel hier:
http://selfhtml.teamone.de/javascript/index.htm
http://selfhtml.teamone.de/javascript/objekte/document.htm#get_element_by_id
http://selfhtml.teamone.de/javascript/objekte/node.htm
Gruß, Jürgen
Hallo,
Wie kann ich per Javascript mehrere Elemente ansprechen. z.b. 2 Checkboxen. Ich möchte, das beide Boxen sich durch einen Klick verändern.
Die Checkboxen sehen so aus:
<input name='checkbox1' type='checkbox' value=''>
<input name='checkbox1' type='checkbox' value=''>
wiso kann ich nicht direkt den Name in Javascript ansprechen. z.b. checkbox1 und dann verändern sich beide Boxen.
Bei mir verändert sich immer nur die erste der Beiden,obwohl sie ja gleich heissen. Ich möchte nicht jeder box einen anderen Namen oder Index geben, da sie dynmisch erzeugt werden, d.h. die Anzahl variiert.
Moin,
versuch es doch mal mit getElementsByName, da kannst Du den Array mit einer
Schleife solange bearbeiten, bis kein Element mehr da ist.
Andererseits sollte es doch gerade bei dynamisch erzeugten Elementen
nicht so schwer sein, eine aufsteigende zahl mit einzubauen, die Du dann
ebenfalls in einer schleife durchackerst.
Ich hoffe, ein bißchen geholfen zu haben
Tschö,
Nep
Hallo,
Wie kann ich per Javascript mehrere Elemente ansprechen. z.b. 2 Checkboxen. Ich möchte, das beide Boxen sich durch einen Klick verändern.
Die Checkboxen sehen so aus:
<input name='checkbox1' type='checkbox' value=''>
<input name='checkbox1' type='checkbox' value=''>
wiso kann ich nicht direkt den Name in Javascript ansprechen. z.b. checkbox1 und dann verändern sich beide Boxen.
Bei mir verändert sich immer nur die erste der Beiden,obwohl sie ja gleich heissen. Ich möchte nicht jeder box einen anderen Namen oder Index geben, da sie dynmisch erzeugt werden, d.h. die Anzahl variiert.
Du suchst wohl eher Radio-Buttons, die genau dieses Verhalten aufweisen. Check-Boxen sind eigentlich Optionsfelder, sind also unabhaengig voneinander waehlbar.
Mit etwas JS kann man das zwar umbiegen, aber ueberlege gut, ob das den Erfahrungen der Nutzer entspricht bzw. ob es wirklich noetig ist und statt dessen Radio-Buttons ausreichen (immer auch an Browser ohne JS denken!):
<input name='checkbox1' type='checkbox' value='' onclick="this.form.elements['checkbox1'][1].checked=!this.form.elements['checkbox1'][0].checked">
<input name='checkbox1' type='checkbox' value='' onclick="this.form.elements['checkbox1'][0].checked=!this.form.elements['checkbox1'][1].checked">
MfG, Thomas