Rechercher : dans
Par :

Ajouter champs text dynamiquement

Dernière réponse le 9 oct 2008 à 16:02:16 j.tel, le 7 oct 2008 à 16:23:59 
 Signaler ce message aux modérateurs

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.

Configuration: Windows XP
Internet Explorer 7.0

1

JB_A, le 7 oct 2008 à 17:08:23

Que veux-tu faire exactement ?

Répondre à JB_A

2

gaerebut, le 7 oct 2008 à 17:21:25

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 Il y a 2 règles d'or pour réussir dans la vie :
-Règle 1:  ne jamais dire tout ce que l'on sait...
-Règle 2: ...

Répondre à gaerebut

3

JB_A, le 7 oct 2008 à 17:32:27

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 ?

Répondre à JB_A

4

gaerebut, le 7 oct 2008 à 18:17:37

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 Il y a 2 règles d'or pour réussir dans la vie :
-Règle 1:  ne jamais dire tout ce que l'on sait...
-Règle 2: ...

Répondre à gaerebut

5

 j.tel, le 9 oct 2008 à 16:02:16

Merciiiiiiiiiiiiiiiiiiiiiiiiiiiiii

Répondre à j.tel