Bonjour � tous,
Je r�alise un site internet dans lequel j'ai un formulaire pour cr�er un sondage.
Tout �a est fait en PHP. Mais j'ai du utiliser du javascript pour permettre � l'utilisateur d'ajouter des champs textes � l'aide d'un bouton. Cette fonction js fonctionne bien pour le formulaire ajouter.
Mais elle bloque pour le formulaire modifier.
Voici le script de mon formulaire
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28 $chaine='<form name="form_sondage" action="form_sondage.php?id='.$idSondage.'" method="post">'; $chaine.='<div id="modif_1">'; $chaine.='<div align="left">Question :'; $chaine.='<input name="question" type="text" value="'.$question.'"/>'; $chaine.='</div>'; $chaine.='<div align="left"> Date limite :'; $chaine.='<input name="dateLimite" type="text" value="'.$dateLimite.'"/>'; $chaine.='</div>'; $i=1; while($ligne=mysql_fetch_array($executeR)) { $chaine.='<div align="left">'; $chaine.=' Réponse'.$i.' :'; $chaine.='<input name="reponse_'.$i.'" type="text" value="'.$ligne['REPONSE'].'"/>'; $chaine.='<input name="id_'.$i.'" type="hidden" value="'.$ligne['IDREPONSES'].'"/>'; $chaine.='</div>'; $i++; } $chaine.='</div>'; $chaine.='<div align="left">'; $chaine.='<span id="input_2">'; $chaine.='<input name="button" type="button" class="input2" onClick="javascript:modif_champ('.$i.')" value="Insérer un autre champ">'; $chaine.='</span></div>'; $chaine.='<div align="left"><input type="submit" name="submit" value="enregistrer" />'; $chaine.='</div>'; $chaine.='</form>';
Voici le script js
Apr�s plusieurs test je me suis aper�u, que le probl�me venait de l'appelle � ma fonction. Pour le formulaire modifi�, j'ai mis une variable en param�tre au lieu de le mettre en dur. Et c'est cette variable qui bloque.
Code : S�lectionner tout - Visualiser dans une fen�tre � part
1
2
3
4
5
6
7
8
9
10
11 function modif_champ(i) { alert(i); var i2 = i + 1; alert(i2); document.getElementById('input_'+i).innerHTML = '<div id="modif_'+i+'">Reponse '+i+' : <input type="text" name="reponse_'+i+'"></div></span>'; document.getElementById('input_'+i).innerHTML += (i <= 10000) ? '<span id="input_'+i2+'"><input class="input2" type="button" onClick="javascript:modif_champ('+i2+')" value="Insérer un autre champ"></span>' : ''; }
Merci d'avance pour votre aide.
Partager