[GastForen Programmierung/Entwicklung JavaScript

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste

Wie Namen der Mastercheckbox an die Funktion übergeben?

bufferm44
Beiträge gesamt: 66

25. Feb 2011, 13:37
Bewertung:

gelesen: 1212

Beitrag als Lesezeichen
Hi zusammen, ich sitze hier seit einer Stunde an einem Problem und komme auch mit massiver Googelei nicht weiter.

Wie bekomme ich den Namen der Mastercheckbox dynamisch als Variable an die Funktion übergeben?

Funktion:
if(document.testformular.mastercheckbox_1.checked)

Formular
<input type=\"checkbox\" id=\"mastercheckbox_1\"...

Vielen Dank!

Code
<? 

printf("<SCRIPT LANGUAGE=\"JavaScript\">
<!--

<!-- Begin
function CheckAll(chk)
{
if(document.testformular.mastercheckbox_1.checked)
{
for (i = 0; i < chk.length; i++)
{
chk[i].checked = true ;
}
}
else
{
for (i = 0; i < chk.length; i++)
{
chk[i].checked = false ;
}
}
}
</script>
");


$_db_result_tiere = array("Hund", "Katze", "Maus");
$_db_result_besitz = array("Villa", "Porsche", "Yacht");

printf("<form name=\"testformular\" action=\"%s\" method=\"post\">", $_SERVER['PHP_SELF']);
printf("Alle markieren: <input type=\"checkbox\" id=\"mastercheckbox_1\" onClick=\"CheckAll(document.testformular.childcheckbox_1)\">");
foreach($_db_result_tiere as $key=> $value)
{
printf("<br><input type=\"checkbox\" id=\"childcheckbox_1\" name=\"tiere_%s\" value=\"1\">%s", $key, $value);
}


printf("<br>Alle markieren: <input type=\"checkbox\" id=\"mastercheckbox_2\" onClick=\"CheckAll(document.testformular.childcheckbox_2)\">");
foreach($_db_result_tiere as $key=> $value)
{
printf("<br><input type=\"checkbox\" id=\"childcheckbox_2\" name=\"besitz_%s\" value=\"1\">%s", $key, $value);
}
printf("</form>");
?>



Sämtliche Syntaxvarianten habe ich durchprobiert, sowas schwebt mir vor:

Code
 
function CheckAll(chk, id)
{
if(document.testformular.id.checked)
...
}

...
CheckAll(document.testformular.childcheckbox_1, this.id)
...


(Dieser Beitrag wurde von bufferm44 am 25. Feb 2011, 13:54 geändert)
Änderungsverlauf:
Beitrag geändert von bufferm44 (User) am 25. Feb 2011, 13:44
Beitrag geändert von bufferm44 (User) am 25. Feb 2011, 13:46
Beitrag geändert von bufferm44 (User) am 25. Feb 2011, 13:54