Tag Sebastian.
Ich habe im Archiv einen Bericht gefunden, welcher besagt, dass man, wenn man Namen für Checkboxen benutzt mit dem Objekt elements arbeiten sollte.
Kann, nicht soll.
Nun habe ich eine Funktion, welche genau das machr, leider funktioniert es nicht.
Das liegt am Namen des Formularelements, '[]' kennzeichnet in Javascript ein Array. Du kannst zwar deine Checkboxen so nennen, aber nicht so ohne weiteres mittels ihres Namens auf sie zugreifen.
function ChoiceAll(field)
{
alert("Alle Bilder wurden angewählt");
for (var i = 0; i < field.length; i++)
{
document.forms[#].elements[field[i]].checked = true;
}
}
Selbst wenn es so ginge, würdest du den String field ("bilder[]") Zeichen für Zeichen durchgehen, deine Anweisung läse sich dann so:
document.forms[#].elements['b'].checked = true;
document.forms[#].elements['i'].checked = true;
usw.
Aber so geht das nicht.
Es bleibt dir nichts anderes übrig, als alle Formularelemente durchzugehen und auf ihre Art hin zu untersuchen. Sollte es sich um eine Checkbox handeln, dann ändere die Eigenschaft checked auf true. Sollte es noch andere Checkboxen geben, die du nicht ändern willst, müsstest du noch den Elementnamen abgleichen.
Lesetipps:
- Zugriff auf Formularelemente über ihre Indexnummer
- Abfrage des Typs des Eingabefeldes
- Zugriff auf den Namen eines Formularelementes
[dsf 3.6]
Siechfred
»Sie kochten heimlich mit Wasser und tranken öffentlich Wein.«