IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Ajouter un champ texte dans mon formulaire


Sujet :

JavaScript

  1. #1
    Débutant
    Inscrit en
    Juin 2006
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 502
    Points : 78
    Points
    78
    Par défaut Ajouter un champ texte dans mon formulaire
    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&eacute;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
    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>' : '';
    	}
    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.

    Merci d'avance pour votre aide.

  2. #2
    Expert confirmé
    Avatar de RomainVALERI
    Homme Profil pro
    POOête
    Inscrit en
    Avril 2008
    Messages
    2 652
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : POOête

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 652
    Points : 4 164
    Points
    4 164
    Par défaut
    le code généré s'il te plait... parce que le code php gna gna gna... je vais mourrir d'ennui si je répète encore cette même demande une fois de plus...

    (mais bon, à vue de nez, ta fonction JS insère un input dans un input... c'est pas gagné)

  3. #3
    Débutant
    Inscrit en
    Juin 2006
    Messages
    502
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 502
    Points : 78
    Points
    78
    Par défaut
    J'ai trouvé l'erreur.

    j'avais mis
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $chaine.='<span id="input_2">';
    au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $chaine.='<span id="input_'.$i.'">';

Discussions similaires

  1. [Doctrine] Ajout d'un champ texte dans un formulaire crée par Doctrine
    Par Malonix dans le forum PHP & Base de données
    Réponses: 0
    Dernier message: 30/03/2009, 11h53
  2. Réponses: 3
    Dernier message: 05/01/2007, 12h37
  3. Ajouter zone de texte dans un formulaire continu
    Par nadia68 dans le forum IHM
    Réponses: 17
    Dernier message: 06/12/2006, 09h00
  4. ajout de champs input dans un formulaire
    Par MV1908 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 22/08/2006, 18h31
  5. Réponses: 8
    Dernier message: 08/02/2006, 09h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo