Knut: getelementbyGROUP

Beitrag lesen

Schön und woher weißt du wieviele Elemente du hast?
in der üblichne Variante mit formular.elements['child_1'].length

Mit ein wenig Aufwand kann man das rauskriegen.

Wir hatten uns doch darauf geeinigt, keine gleichen Namen zu vergeben (andernfalls wäre es nach Deiner Variante leichter, das ist richtig). Also geht doch nur noch nach Deiner Variante sowas

<input type="checkbox" name="child_1_1">
<input type="checkbox" name="child_1_2">

Wo siehst Du programmiertechnisch den großen Unterschied zu einem (unechten) Feld?

gar keinen, wobei ich nicht weiß ob wir uns geeinigt haben, es kommt darauf an welchen Zweck das ganze haben soll.

Das hatten wir schon, es kommt eben auf den Zweck des ganzen an, ob eine Checkboxgroup Sinn macht oder nicht.

Ja, genau, darauf hatten wir uns ja auch verständigt?

Ich denke, es hat sich jetzt eine optimale Lösung (zumindest für PHP) herauskristallisiert:

<input type="checkbox" name="child_1[]" />
<input type="checkbox" name="child_1[]" />
<input type="checkbox" name="child_1[]" />

»»

Wie in PHP üblich muss KEIN(!) Index bei Arrays angegeben werden, sondern es wird automatisch inkrementiert, durch die gleichen Namen ist es ebenso in JS möglich die Daten zu verarbeiten.

Perfekt für Javascript. Nichts gegen Perl, aber das ist ein klarer Vorteil von PHP.

Genau, und das ist eine auf PHP beschränkte Schreibweise und an sich nicht nötig.

Leider doch, zumindest in manchen Fällem, das hatten wir doch schon. Sonst kannst Du bei gleichen Werten nicht entscheiden, welche Checkbox aktiviert wurde.

Wie schon geschrieben in Perl braucht man die eckigen Klammern z.b. ...

manchmal

nicht

hat dadurch aber nicht die Möglichkeit mehrere Tiefen einzubauen,

was um so bedauerlicher ist und man sie irgendwie doch braucht. Also kannst Du dir auch nur über den Namen ein künstliches Feld zusammenbauen.