formulaire (cases à cocher) et affichage

Petit nouveau ! | 4 Messages

19 avr. 2006, 15:26

Bonjour !

je "dynamise un site statique" et je rencontre (pour commencer!!) le problème suivant :

dans un formulaire, j'ai des cases à cocher qui lorsqu'elles sont cochées doivent afficher un prix (jusque là pas de problème) et ensuite un calcul doit s'effectuer, je veux juste savoir comment faire pour que le prix n'apparaisse plus si on "décoche" la case et bien sur que le calcul se refasse.

je suppose qu'une commande irait mieux que du ligne à ligne mais....
voici le script :
<form name="commande" action="commande.php" method="POST">
<table width="80%">
<tr><td>Modèle 1</td><td><input type="text" name="prix" value="200" size="5"</td><td>Euros</td></tr>
<tr><td><input type="checkbox" name="checkbox1" value="30" onClick='commande.result1.value=this.value'>
    bande de couture intercalaire </td><td>30 euros</td><td><input type="text" name="result1"></td>
<tr><td><input type="checkbox" name="checkbox2" value="20" onClick='commande.result2.value=this.value'>
    1 semelle supplémentaire </td><td>20 euros</td><td><input type="text" name="result2"></td>
<tr><td><input type="checkbox" name="checkbox3" value="10" onClick='commande.result3.value=this.value'>
    doublage de pointe </td><td>10 euros</td><td><input type="text" name="result3"></td>
<tr><td>Total</td><td><input type="text" value=""></td></tr></form>
j'espère avoir été assez claire. Merci pour toute réponse

Eléphant du PHP | 360 Messages

19 avr. 2006, 16:50

Tu as les balises "code" qui te permettent de mettre en couleur ton code, et aussi tu devrais aérer tes balises en retournant à la ligne apres chaque fermeture (ex : </td> ou </tr>), tu t'apercevrais déjà qu'il te manquais des balises </tr> que je t'ai mis en rouge :

Code : Tout sélectionner

<form name="commande" action="commande.php" method="POST"> <table width="80%"> <tr> <td>Modèle 1</td> <td><input type="text" name="prix" value="200" size="5"</td> <td>Euros</td> </tr> <tr> <td><input type="checkbox" name="checkbox1" value="30" onClick='commande.result1.value=this.value'> bande de couture intercalaire </td> <td>30 euros</td> <td><input type="text" name="result1"></td>
</TR>

Code : Tout sélectionner

<tr> <td><input type="checkbox" name="checkbox2" value="20" onClick='commande.result2.value=this.value'> 1 semelle supplémentaire </td> <td>20 euros</td> <td><input type="text" name="result2"></td>
</TR>

Code : Tout sélectionner

<tr> <td><input type="checkbox" name="checkbox3" value="10" onClick='commande.result3.value=this.value'> doublage de pointe </td> <td>10 euros</td> <td><input type="text" name="result3"></td>
</TR>

Code : Tout sélectionner

<tr> <td>Total</td> <td><input type="text" value=""></td> </tr> </form>

Eléphant du PHP | 172 Messages

19 avr. 2006, 23:12

Salut,

Tu peux le faire comme ça par exemple:
<html>
<head>
	<title>Somme</title>
<script type="text/javascript">
<!--
function addi() {
	for (i=1;i<4;i++) {
		checkboxi = "checkbox" + i;
		resulti = "result" + i;
		if (document.getElementById(checkboxi).checked)
			document.getElementById(resulti).value = document.getElementById(checkboxi).value
		else
			document.getElementById(resulti).value = ""
	}
	document.getElementById("total").value = Number(document.getElementById("result1").value) +
	Number(document.getElementById("result2").value) +
	Number(document.getElementById("result3").value);
}
//-->
</script>	
</head>

<body>
<form name="commande" id="commande" action="commande.php" method="POST">
<table width="80%">
	<tr>
		<td>Modèle 1</td>
		<td><input type="text" name="prix" id="prix" value="200" size="5"</td>
		<td>Euros</td>
	</tr>
	<tr>
		<td><input type="checkbox" name="checkbox1" id="checkbox1" value="30" onClick='addi()'>
		 bande de couture intercalaire </td>
		<td>30 euros</td>
		<td><input type="text" id="result1" name="result1"></td>
	<tr>
		<td><input type="checkbox" name="checkbox2" id="checkbox2" value="20" onClick='addi()'>
		 1 semelle supplémentaire </td>
		<td>20 euros</td>
		<td><input type="text" id="result2" name="result2"></td>
	<tr>
		<td><input type="checkbox" name="checkbox3" id="checkbox3" value="10" onClick='addi()'>
		 doublage de pointe </td>
		<td>10 euros</td>
		<td><input type="text" id="result3" name="result3" name="result3"></td>
	</tr>
	<tr>
		<td align="right">Total : </td>
		<td><input type="text" name="total" id="total"></td>
	</tr>
</form>

</body>

</html>