id aus php im Javascript verwenden?

JamesT

Erfahrenes Mitglied
Hallo Leute,

ich benutze ein Javascript was mir tabellen auf und zuklappt,
das funktioniert soweit auch schon. Ich hole jedoch meine Daten
aus einer Datenbank, beispielsweise zehn einträge, eine davon
ist eine id als primärer schlüssel. Klicke ich nun auf / auf und zuklappen,
wirkt sich das alles auf die erste id aus. Also klicke ich auf eintrag 10
öffnen sich immer die bemerkungen von eintrag eins. Ich denke ganz einfach
weil die Javascript ID immer test ist. deswegen würd ich da gern irgendwie meine
id eintragen, nur wie?

Nun meine Frage, wie kann ich die id bei dem Javascript angeben, so
dass sich nur bei dem eintrag die tabelle aufklappt, bei dem ich auf "aufklappen"
geklickt habe.

Hier ist das Javascript und dadrunter, der code an der stelle wo ich die tabelle
aufklappen muss.

Ich hoffe ihr könnt mir helfen, vielen Dank im voraus.

PHP:
<script type="text/javascript" language="JavaScript1.2">
var angezeigt = false;

function versteckt() 
{ 
	if (angezeigt)
	{
		document.getElementById('test').style.display = 'none';
		angezeigt = false;
	}
	else
	{
		document.getElementById('test').style.display = 'block';
		angezeigt = true;
	}
} 
</script>

PHP:
	echo	   '<tr style="display : none" id="test" bgcolor="#FFF1C7">';
	echo	   '<td align="center" valign="top">Bemerkungen</td>';
	echo       '<td colspan="4">'.nl2br($row[bemerkungen]).'&nbsp;</td>';
	echo       "</tr>";
 
Wie rufst du denn die funktion versteckt auf? Prinzipell würde ich ja mit einer Funktion mit Parametern wie dieser hier arbeiten:
HTML:
<script type="text/javascript">
     	function versteckt(id) {
     		obj = document.getElementById(id);
     		obj.style.display = (obj.style.display == 'none') ? 'block' : 'none';
     	}
     </script>
In JavaScript kannst du ganz normal mit php reinschreiben. Also du könntest das ganze dann so aufrufen:
PHP:
echo '<input type="button" value="1. Spalte Auf-/Zuklappen!" onclick="'.$id1.'"/>';
  echo '<input type="button" value="2. Spalte Auf-/Zuklappen!" onclick="'.$id2.'"/>';
  
  [...]
Ich gehe der Einfachheit halber im Beispiel davon aus, dass die ids der einzelnen Spalten in den PHP-Variablen $id1, $id2 usw. gespeichert sind.
 
Zuletzt bearbeitet:
Also aufrufen sieht folgendermaßen aus:

PHP:
	echo       '<td width="30" align="center"><a href="#" onclick="versteckt()">info</a></td>';

kann ich denn oben in dem Javascript bereich schon das '.$id.' mit einbauen?

Vielen Dank für dein Hilfe :-)

Grüße

JamesT
 
Nö, dann müsstest du nämlich für jedes ein- bzw. auszublenden Element eine neue Funktion versteckt1(), versteckt2() usw. machen. Oder habe ich dich falsch verstanden und du hast immer nur ein Elment pro aufruf?

So einbinden:
PHP:
echo	 "<td width=\"30\" align=\"center\"><a href=\"#\" onclick=\"versteckt('".$id1."')\">info1</a></td>";
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück