Ajouter champs text dynamiquement

Fermé
j.tel Messages postés 133 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 13 mai 2013 - 7 oct. 2008 à 16:23
j.tel Messages postés 133 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 13 mai 2013 - 9 oct. 2008 à 16:02
Bonjour,
je cherche un truc en javascript pour ajouter des champs text l'un au dessus de l'autres selon le choix de l'utilisateur.
je vous remercie.
A voir également:

5 réponses

JB_A Messages postés 301 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 13 février 2018 5
7 oct. 2008 à 17:08
Que veux-tu faire exactement ?
0
gaerebut Messages postés 1017 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 22 novembre 2013 171
7 oct. 2008 à 17:21
Salut, bon ben c'est pas trop dur regarde l'exemple suivant.
<html>
	<head>
	<script type="text/javascript">
		function create()
		{
			var compteur = document.getElementById('compteur');
			var fields = document.getElementById('fields');
			var error = document.getElementById('error');
			if(compteur.value < 9)
			{
				++compteur.value;
				fields.innerHTML += "<input type='text' name='text" + compteur.value + "' value='Champ numéro " + compteur.value + "' /><br />";
			}
			else
			{
				error.innerHTML = "<font color=red>Vous ne pouvez pas avoir plus de 9 champs</font>";
			}
		}
	</script>
	</head>
	<body>
	<div onclick="create()" style="cursor:pointer; text-decoration: underline;">Ajouter un champ texte</div>
	<br />
	<form action="#" method="post" id="fields">
		<input type="text" name="text1" value="Champ numéro 1" />
		<br />
	</form>
	<div id="error" style="color: red; font-weight: bold"></div>
	<input type="hidden" id="compteur" value="1" />
	</body>
</html>


Bon, ceci est un petit code qui permet d'ajouter des champs texte, j'ai fixé une taille limite a 9 champs texte. Le code est simple est paramètrable.

A+

Gaerebut
0
JB_A Messages postés 301 Date d'inscription jeudi 19 juin 2008 Statut Membre Dernière intervention 13 février 2018 5
7 oct. 2008 à 17:32
En fait, tu veux qu'à chaque fois que tu ajoutes un champ, le champ précédent passe en dessous pour ne laisser en premier que le champ vide. Est-ce cela ?
0
gaerebut Messages postés 1017 Date d'inscription mardi 30 octobre 2007 Statut Membre Dernière intervention 22 novembre 2013 171
7 oct. 2008 à 18:17
Ha ok !

J'ai changé juste une ligne mais je remet tout quand même :

<html>
	<head>
	<script type="text/javascript">
		function create()
		{
			var compteur = document.getElementById('compteur');
			var fields = document.getElementById('fields');
			var error = document.getElementById('error');
			if(compteur.value < 9)
			{
				++compteur.value;
				fields.innerHTML = "<input type='text' name='text" + compteur.value + "' value='Champ numéro " + compteur.value + "' /><br />" + fields.innerHTML;
			}
			else
			{
				error.innerHTML = "<font color=red>Vous ne pouvez pas avoir plus de 9 champs</font>";
			}
		}
	</script>
	</head>
	<body>
	<div onclick="create()" style="cursor:pointer; text-decoration: underline;">Ajouter un champ texte</div>
	<br />
	<form action="#" method="post" id="fields">
		<input type="text" name="text1" value="Champ numéro 1" />
		<br />
	</form>
	<div id="error" style="color: red; font-weight: bold"></div>
	<input type="hidden" id="compteur" value="1" />
	</body>
</html>


A+

Gaerebut
0

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

Posez votre question
j.tel Messages postés 133 Date d'inscription mercredi 14 mai 2008 Statut Membre Dernière intervention 13 mai 2013 1
9 oct. 2008 à 16:02
merciiiiiiiiiiiiiiiiiiiiiiiiiiiiii
0