additions de champs dans un formulaire

Invité
Invité n'ayant pas de compte PHPfrance

18 sept. 2005, 18:13

Bonjour,

J'ai un formulaire avec 50 points a répartir dans 10 catégories.
J'aimerai faire aparaitre un décompte des points restants au fur et a mesure que l'on rempli le formulaire.

par exemple : catégorie n°1 : 5
catégorie n°2 : 5
Il vous reste à répartir 40 points.

Je voulais savoir s'il était possible de le faire en javascript ( langage qui me semble le plus aproprié ) , et si oui comment . Merci.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

18 sept. 2005, 18:23

Salut avec un truc dans ce style ça devri aller :wink:
<script language="javascript">
function total()
{	
var champ1=document.commande.Champ1.value;
var champ2=document.commande.Champ2.value;
document.commande.Reste.value = parseFloat(champ1) + parseFloat(champ2);

}
</script>
EDIT commande est le nom du formulaire

Dans le formulaire:
Nombre de points restant à distribuer:<input type="text" name="Reste">

<input type="text" name="Champ1"  value=0 onkeyup="total()" >
<input type="text" name="Champ2"  value=0 onkeyup="total()" >
... 
Modifié en dernier par Truc le 18 sept. 2005, 18:54, modifié 1 fois.

Invité
Invité n'ayant pas de compte PHPfrance

18 sept. 2005, 18:48

désolé mais ça ne marche pas : il me met erreur sur la page :(

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

18 sept. 2005, 18:53

met le code de ta page, stp.

Invité
Invité n'ayant pas de compte PHPfrance

18 sept. 2005, 18:58

Tout simplement (pour tester)

 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
   <head>
       <title>test</title>
       <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   <script language="javascript"> 
function total() 
{     
var champ1=document.commande.Champ1.value; 
var champ2=document.commande.Champ2.value; 
document.commande.Reste.value = parseFloat(champ1) + parseFloat(champ2); 

} 
</script>
   
   </head>
   <body>

Nombre de points restant à distribuer:<input type="text" name="Reste"> 

<input type="text" name="Champ1"  value=0 onkeyup="total()" > 
<input type="text" name="Champ2"  value=0 onkeyup="total()" >

</body>
</html>

Eléphant du PHP | 417 Messages

18 sept. 2005, 19:06

---
Modifié en dernier par JazzFinder le 28 juin 2006, 19:34, modifié 1 fois.

Modérateur PHPfrance
Modérateur PHPfrance | 7636 Messages

18 sept. 2005, 19:10

voila, j'ai rectifié le tir: :oops:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<script language="javascript">
function total()
{     
var champ1=document.points.Champ1.value;
var champ2=document.points.Champ2.value;
document.points.Reste.value = parseFloat(champ1) + parseFloat(champ2);

}
</script>   
</head>
   <body>
		<form name="points">
						
			<input type="text" name="Champ1"  value=0 onkeyup="total()" >
			<input type="text" name="Champ2"  value=0 onkeyup="total()" >
			<br>
			Nombre de points restant à distribuer:<input type="text" name="Reste">
		</form>
	</body>
</html>
par contre il est vrai que "onkeyup" n'a pas l'air d'etre accetpté sous ie :?

Invité
Invité n'ayant pas de compte PHPfrance

18 sept. 2005, 19:10

Code : Tout sélectionner

document.commande.Reste.value = parseFloat(champ1) + parseFloat(champ2);
Modifier pour:

Code : Tout sélectionner

document.commande.Reste.value = parseFloat(Champ1) + parseFloat(Champ2);

non ça ne change rien de plus c'est les variables champ que l'on veut additionner dans le premier code pas le nom, non ?

Invité
Invité n'ayant pas de compte PHPfrance

18 sept. 2005, 19:12

voila, j'ai rectifié le tir: :oops:
[...]
par contre il est vrai que "onkeyup" n'a pas l'air d'etre accetpté sous ie :?
Merci maintenant ça marche :D