Ajouter champs quand premier rempli form js

Résolu/Fermé
griko Messages postés 343 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 29 avril 2014 - 3 août 2009 à 12:39
griko Messages postés 343 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 29 avril 2014 - 3 août 2009 à 16:06
Bonjour,
comment faire pour
ajouter un champs (input) dans un formulaire quand le premier champs est rempli sans rechargé la page

déjà c'est possible ?
Si oui comment ?
svp
Je ne trouve pas mon bonheur sur internet !
A voir également:

6 réponses

TheLamia Messages postés 76 Date d'inscription dimanche 11 février 2007 Statut Membre Dernière intervention 18 août 2010 31
3 août 2009 à 12:44
en javascript, tu pourrais cacher tes champs suivants grace aux propriétés css (display:none), puis les afficher à la demande (display:block) lors d'un onBlur sur le champs précédent
0
griko Messages postés 343 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 29 avril 2014 10
3 août 2009 à 12:53
Oulaa c quoi un onBlur ??

Tu pourrais me faire voir un exemple ?
0
griko Messages postés 343 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 29 avril 2014 10
3 août 2009 à 13:03
Et j'ajoute, il faut un nombre illimité d'ajout de champs
0
TheLamia Messages postés 76 Date d'inscription dimanche 11 février 2007 Statut Membre Dernière intervention 18 août 2010 31
3 août 2009 à 13:13
onBlur veut dire lorsque tu quitte le champ.

alors, imaginons les input:

<input id="champ1" onBlur="afficheInput('champ2')" ... />
<input id="champ2" onBlur="afficheInput('champ3')" ... />
<input id="champ3" onBlur="afficheInput('champ4')" ... />
<input id="champ4" ... />

forcément le dernier n'a pas de onBlur puisqu'il n'y a pas de suivant.

tout en haut de ta page tu as un bloc javascript ou tu met :

getElementById("champ2").style.display = "none";
getElementById("champ3").style.display = "none";
getElementById("champ4").style.display = "none";

et tu déclare la fonction

function afficheInput(id_du_champ)
{
//ce if sert à vérifier la longueur du champ, si le champ est toujours vide, on n'affiche pas le suivant
if (getElementById(id_du_champ).value.length > 0)
getElementById(id_du_champ).style.display = "block";
}
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
griko Messages postés 343 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 29 avril 2014 10
3 août 2009 à 14:58
sa marche pas !!
voici mon code:

ma pagephp :
<input id="champ1" onBlur="afficheInput('champ2')" type="text" name="lien_sitoff1" size="50"/>
<input id="champ2" onBlur="afficheInput('champ3')"  type="text" name="lien_sitoff2" size="50"/>
<input id="champ3" onBlur="afficheInput('champ4')" type="text" name="lien_sitoff3" size="50"/>


et javascipt ajchamps.js:
getElementById("champ2").style.display = "none";
getElementById("champ3").style.display = "none";
getElementById("champ4").style.display = "none"; 

function afficheInput(id_du_champ)
{
	//ce if sert à vérifier la longueur du champ, si le champ est toujours vide, on n'affiche pas le suivant
	if (getElementById(id_du_champ).value.length > 0)
	getElementById(id_du_champ).style.display = "block";
}
0
griko Messages postés 343 Date d'inscription samedi 31 janvier 2009 Statut Membre Dernière intervention 29 avril 2014 10
3 août 2009 à 16:06
Donc j'ai trouvé je pense mais j'ai un souci de cote
et je ne vois pas comment je pourrais faire !
c'est là (dans un fichier js) :
onChange="create_champ('+i2+', "'+txtName+'", "'+txtType+'", "'+txtSize+'")"


HELP !
0