Checkbox Probleme

moistwanted

Erfahrenes Mitglied
Moinsen!

Mein Problem ist folgendes:

Ich will eine PM-funktion schreiben und will nun die Möglichkeit des Löschens einbauen!

Ich hab mit Javascript ein e Funktion geschrieben, mit der man alle aufeinmal markieren kann. Das Problem ist jetzt das die Checkboxen dafür den gleichen Namen haben müssen!
Wenn ich nun mehrere Checkboxen anklicke und diese per Formular übergebe, wird immer nur die letzte angeklickte Box angezeigt!
Ich hatte auch die Idee es mit einem Array zumachen aber dann funktioniert die Javascript funktion nichtmehr!

So sieht mein Code aus:
Code:
<script language='JavaScript' type='text/javascript'>
<!--
var Marker = 'false';

function CheckboxenAktivieren(field)
{
	if(Marker=='false')
	{
		for(i=0; i<field.length; i++)
		{
			field[i].checked = true;
		}
		Marker = 'true';
		return 'none';
	}
	else
	{
		for(i=0; i<field.length; i++)
		{
			field[i].checked = false;
		}
		Marker = 'false';
		return 'all';
	}
}
//-->
</script>

<?
if($submit)
{
   foreach($_POST["delpm"] as $pm)
   {
    echo $pm."<br>";
   }

}
else
{
 echo"<form action='frage.php' method='post' enctype='multipart/form-data'>
	<input type='checkbox' onClick='this.value=CheckboxenAktivieren(this.form.delpm);' value='all'><br/>
     <input type='Checkbox' name='delpm' value='1'><br/>
      <input type='Checkbox' name='delpm' value='2'><br/>
      <input type='Checkbox' name='delpm' value='3'><br/>
      <input type='Checkbox' name='delpm' value='4'><br/>
      <input type='Checkbox' name='delpm' value='usw.'><br/>
      <input type='submit' name='submit' value='Delete'><br/>
      </form";
}

?>

Wenn ich nun anstatt
Code:
<input type='Checkbox' name='delpm' value='3'><br/>

schreibe
Code:
<input type='Checkbox' name='delpm[]' value='3'><br/>

werden alle nach dem Submit angezeigt die angeklickt wurden aber die Javascriptfunktion geht nicht mehr!

Kann mir jemand helfen?

Vielen Dank schonmal im Voraus!
 
Bei der 2. Variante muss der Aufruf so erfolgen:
Code:
onClick='this.value=CheckboxenAktivieren(this.form.elements[\"delpm[]\"]);'
 
Beachte aber bei der Sache:
Im IE gibt es einen Fehler, wenn es nur ein Element mit diesem Namen gibt(in deinem Fall also nur eine PM)... dann legt er nämlich keinen Array aus den Elementen an;)
 

Neue Beiträge

Zurück