je viens d'intégrer une function javascript dans une boucle while pour que la fonction s'applique à tous les passages de la boucle. Ça marche! mais c'est vraiment bizarre j'écris la fonction avec un nouveau nom ainsi que les variable que j'incrémente de 1 à chaque passage de la boucle avec la variable $i.
En php j'apelle la fonction ou j'en ai de besoin et aussi souvent que je le veux et elle s'exécute mais là ouf! je n'arrivais pas à la faire exécuter correctement à chaque passage de boucle parcequ'elle ne veut que s'appliquer au premier élément de la boucle that it.
bon! je vous montre ce que j'ai fait et je vous prie de me proposer une manière plus intelligente d'écrire ce code sans faire une fonctions pour chaque passage de boucle.
merci!
$i=1;
while ($ligne=mysql_fetch_array($resultat)) {
//--------------------------------------javascrip pour ouvrir un block
echo <<<HEREDOC
<script language="javascript">
function toggle$i() {//--------------------------------------------ici le $i change le nom de la fonction comme vous pouvez voir
var ele$i = document.getElementById("toggleText$i");
var text$i = document.getElementById("displayText$i");
if(ele$i.style.display == "block") {
ele$i.style.display = "none";
text$i.innerHTML = "show";
}
else {
ele$i.style.display = "block";
text$i.innerHTML = "hide";
}
}
</script>
HEREDOC;
//--------------------------------------fin du javascript
echo "<tr>";
echo "<input type=hidden name=id[] value=".$ligne['id_boutique'].">";
//-----------pour l'image
if(file_exists("../photo/boutique/petit/".$ligne['id_boutique'].".jpg")){
echo "<td><a id=displayText".$i." href=\"javascript:toggle$i();\"><img src=../photo/boutique/petit/".$ligne['id_boutique'].".jpg width=75 border=0></a>";
echo "<div id=toggleText".$i." style=\"display: none\">";