Problème de calcul
auremax
Messages postés
14
Statut
Membre
-
Profil bloqué -
Profil bloqué -
Bonjour,
j'ai créé un formulaire de commande avec un calcul automatique du total, mais voilà cela ne marche pas mais je ne sais pas ou cela coince.
Je vous met mon code de ma page html:
<dl class="Style2"><p><strong>Nombre d'exemplaires ?</strong></p>
<dl>
<dd>
<div id="Produits" visibility: visible">
<form name="Form_Produits" enctype="text/plain">
<table width="505">
<tr>
<td width="57"><input type="text" size="5" name="DVD" class="TexteMarron12px" value="0" onKeyUp="CalcTotal();"></td>
<td width="434" class="Style2"><b>DVD</b> à 20.-- Frs/pièce (frais de port en sus)</td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Pougnon" class="TexteMarron12px" value="0" onKeyUp="CalcTotal();"></td>
<td class="Style2" width="434"><b>Pougnon</b> à 3.-- Frs/pièce (frais de port en sus) </td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Recueil" class="TexteMarron12px" value="0" onKeyUp="CalcTotal();"></td>
<td class="Style2" width="434"><b>Recueil de parties</b> 5.-- Frs/pièce (frais de port en sus)
</td>
</tr>
<tr>
<td width="57">
<hr>
</td>
<td class="Style2" width="434"> </td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Total" class="TexteMarron14px" value="0" readonly></td>
<td class="Style2" width="434">TOTAL DE LA COMMANDE </td>
</tr>
</table>
</form>
</div>
et ensuite le script de Javascript:
var Tab_Prod = ["DVD: ", "Pougnon: ", "Recueil de parties: ", "TOTAL en SFr: "];
var Tab_Prix = [20, 3, 5, 0];
// ************************************************************************************************************************
// Chaque modif sur le formulaire est automatiquement reportée dans le calcul du total
// ************************************************************************************************************************
function CalcTotal(test)
{
var Cout = 0;
if (document.Form_Adresse.Manifestations.value == "08/01")
{
for (var i = 0; i < document.Form_Aout.elements.length - 2; i++)
{
if (isNaN(document.Form_Aout.elements[i].value) ||
document.Form_Aout.elements[i].value.indexOf("-") != -1 ||
document.Form_Aout.elements[i].value.indexOf(".") != -1 ||
document.Form_Aout.elements[i].value.indexOf(",") != -1)
{
window.alert("PROBLEME: Vérifiez svp les quantités que vous avez saisies !");
document.Form_Aout.Total.value = 0;
return "NON";
}
else
Cout += document.Form_Aout.elements[i].value * Tab_PrixAout[i];
}
document.Form_Aout.Total.value = Cout;
}
else
{
for (var i = 0; i < document.Form_Produits.elements.length - 2; i++)
{
if (isNaN(document.Form_Produits.elements[i].value) ||
document.Form_Produits.elements[i].value.indexOf("-") != -1 ||
document.Form_Produits.elements[i].value.indexOf(".") != -1 ||
document.Form_Produits.elements[i].value.indexOf(",") != -1)
{
window.alert("PROBLEME: Vérifiez svp les quantités que vous avez saisies !");
document.Form_Produits.Total.value = 0;
return "NON";
}
else
{
if ((i == 10 || i == 11) && (document.Form_Produits.elements[i].value < 20) &&
(document.Form_Produits.elements[i].value != 0))
{
window.alert("ATTENTION: Les quiches et les ramequins ne se commandent pas à moins de 20 pièces !");
document.Form_Produits.elements[i].value = 0;
}
Cout += document.Form_Produits.elements[i].value * Tab_Prix[i];
}
}
document.Form_Produits.Total.value = Cout;
}
if (test == "tester" && Cout == 0)
{
window.alert("PROBLEME: Vous n'avez pas selectionné de produit !");
document.Form_Produits.Total.value = 0;
return "NON";
}
return "OUI";
}
Merci de votre aide
j'ai créé un formulaire de commande avec un calcul automatique du total, mais voilà cela ne marche pas mais je ne sais pas ou cela coince.
Je vous met mon code de ma page html:
<dl class="Style2"><p><strong>Nombre d'exemplaires ?</strong></p>
<dl>
<dd>
<div id="Produits" visibility: visible">
<form name="Form_Produits" enctype="text/plain">
<table width="505">
<tr>
<td width="57"><input type="text" size="5" name="DVD" class="TexteMarron12px" value="0" onKeyUp="CalcTotal();"></td>
<td width="434" class="Style2"><b>DVD</b> à 20.-- Frs/pièce (frais de port en sus)</td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Pougnon" class="TexteMarron12px" value="0" onKeyUp="CalcTotal();"></td>
<td class="Style2" width="434"><b>Pougnon</b> à 3.-- Frs/pièce (frais de port en sus) </td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Recueil" class="TexteMarron12px" value="0" onKeyUp="CalcTotal();"></td>
<td class="Style2" width="434"><b>Recueil de parties</b> 5.-- Frs/pièce (frais de port en sus)
</td>
</tr>
<tr>
<td width="57">
<hr>
</td>
<td class="Style2" width="434"> </td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Total" class="TexteMarron14px" value="0" readonly></td>
<td class="Style2" width="434">TOTAL DE LA COMMANDE </td>
</tr>
</table>
</form>
</div>
et ensuite le script de Javascript:
var Tab_Prod = ["DVD: ", "Pougnon: ", "Recueil de parties: ", "TOTAL en SFr: "];
var Tab_Prix = [20, 3, 5, 0];
// ************************************************************************************************************************
// Chaque modif sur le formulaire est automatiquement reportée dans le calcul du total
// ************************************************************************************************************************
function CalcTotal(test)
{
var Cout = 0;
if (document.Form_Adresse.Manifestations.value == "08/01")
{
for (var i = 0; i < document.Form_Aout.elements.length - 2; i++)
{
if (isNaN(document.Form_Aout.elements[i].value) ||
document.Form_Aout.elements[i].value.indexOf("-") != -1 ||
document.Form_Aout.elements[i].value.indexOf(".") != -1 ||
document.Form_Aout.elements[i].value.indexOf(",") != -1)
{
window.alert("PROBLEME: Vérifiez svp les quantités que vous avez saisies !");
document.Form_Aout.Total.value = 0;
return "NON";
}
else
Cout += document.Form_Aout.elements[i].value * Tab_PrixAout[i];
}
document.Form_Aout.Total.value = Cout;
}
else
{
for (var i = 0; i < document.Form_Produits.elements.length - 2; i++)
{
if (isNaN(document.Form_Produits.elements[i].value) ||
document.Form_Produits.elements[i].value.indexOf("-") != -1 ||
document.Form_Produits.elements[i].value.indexOf(".") != -1 ||
document.Form_Produits.elements[i].value.indexOf(",") != -1)
{
window.alert("PROBLEME: Vérifiez svp les quantités que vous avez saisies !");
document.Form_Produits.Total.value = 0;
return "NON";
}
else
{
if ((i == 10 || i == 11) && (document.Form_Produits.elements[i].value < 20) &&
(document.Form_Produits.elements[i].value != 0))
{
window.alert("ATTENTION: Les quiches et les ramequins ne se commandent pas à moins de 20 pièces !");
document.Form_Produits.elements[i].value = 0;
}
Cout += document.Form_Produits.elements[i].value * Tab_Prix[i];
}
}
document.Form_Produits.Total.value = Cout;
}
if (test == "tester" && Cout == 0)
{
window.alert("PROBLEME: Vous n'avez pas selectionné de produit !");
document.Form_Produits.Total.value = 0;
return "NON";
}
return "OUI";
}
Merci de votre aide
A voir également:
- Problème de calcul
- Calcul km marche à pied gratuit - Télécharger - Sport
- Calcul de moyenne sur excel - Guide
- Calcul charpente bois gratuit - Télécharger - Architecture & Déco
- Logiciel gratuit calcul valeur nutritionnelle - Télécharger - Santé & Bien-être
- Logiciel gratuit calcul surface m2 - Télécharger - Outils professionnels
4 réponses
essai ce code:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Vente</title>
<script type="text/javascript">
var Tab_Prod = ["DVD: ", "Pougnon: ", "Recueil de parties: ", "TOTAL en SFr: "];
var Tab_Prix = [20, 3, 5, 0];
// ****************************************************************************************** ******************************
// Chaque modif sur le formulaire est automatiquement reportée dans le calcul du total
// ****************************************************************************************** ******************************
function CalcTotal()
{
var Cout = 0;
/*
if (document.Form_Adresse.Manifestations.value == "08/01")
{
for (var i = 0; i < document.Form_Aout.elements.length - 2; i++)
{
if (isNaN(document.Form_Aout.elements[i].value) ||
document.Form_Aout.elements[i].value.indexOf("-") != -1 ||
document.Form_Aout.elements[i].value.indexOf(".") != -1 ||
document.Form_Aout.elements[i].value.indexOf(",") != -1)
{
window.alert("PROBLEME: Vérifiez svp les quantités que vous avez saisies !");
document.Form_Aout.Total.value = 0;
return "NON";
}
else
Cout += document.Form_Aout.elements[i].value * Tab_PrixAout[i];
}
document.Form_Aout.Total.value = Cout;
}
else
{*/
for (var i = 0; i < document.Form_Produits.elements.length - 2; i++)
{
if (isNaN(document.Form_Produits.elements[i].value) ||
document.Form_Produits.elements[i].value.indexOf("-") != -1 ||
document.Form_Produits.elements[i].value.indexOf(".") != -1 ||
document.Form_Produits.elements[i].value.indexOf(",") != -1)
{
window.alert("PROBLEME: Vérifiez svp les quantités que vous avez saisies !");
document.Form_Produits.Total.value = 0;
return "NON";
}
else
{
if ((i == 10 || i == 11) && (document.Form_Produits.elements[i].value < 20) &&
(document.Form_Produits.elements[i].value != 0))
{
window.alert("ATTENTION: Les quiches et les ramequins ne se commandent pas à moins de 20 pièces !");
document.Form_Produits.elements[i].value = 0;
}
Cout += document.Form_Produits.elements[i].value * Tab_Prix[i];
}
document.Form_Produits.Total.value = Cout;
}
if ( Cout == 0)
{
window.alert("PROBLEME: Vous n'avez pas selectionné de produit !");
document.Form_Produits.Total.value = 0;
return "NON";
}
return "OUI";
}
</script>
</head>
<body>
<dl class="Style2"><p><strong>Nombre d'exemplaires ?</strong></p></dl>
<dd>
<div id="Produits" visibility: visible>
<form name="Form_Produits" enctype="text/plain">
<table width="505">
<tr>
<td width="57"><input type="text" size="5" name="DVD" class="TexteMarron12px" value="0" onchange="javascript:CalcTotal();"></td>
<td width="434" class="Style2"><b>DVD</b> à 20.-- Frs/pièce (frais de port en sus)</td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Pougnon" class="TexteMarron12px" value="0" onchange="javascript:CalcTotal();"></td>
<td class="Style2" width="434"><b>Pougnon</b> à 3.-- Frs/pièce (frais de port en sus) </td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Recueil" class="TexteMarron12px" value="0" onchange="javascript:CalcTotal();"></td>
<td class="Style2" width="434"><b>Recueil de parties</b> 5.-- Frs/pièce (frais de port en sus)
</td>
</tr>
<tr>
<td width="57">
<hr>
</td>
<td class="Style2" width="434"> </td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Total" class="TexteMarron14px" value="0" readonly></td>
<td class="Style2" width="434">TOTAL DE LA COMMANDE </td>
</tr>
</table>
</form>
</div>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Vente</title>
<script type="text/javascript">
var Tab_Prod = ["DVD: ", "Pougnon: ", "Recueil de parties: ", "TOTAL en SFr: "];
var Tab_Prix = [20, 3, 5, 0];
// ****************************************************************************************** ******************************
// Chaque modif sur le formulaire est automatiquement reportée dans le calcul du total
// ****************************************************************************************** ******************************
function CalcTotal()
{
var Cout = 0;
/*
if (document.Form_Adresse.Manifestations.value == "08/01")
{
for (var i = 0; i < document.Form_Aout.elements.length - 2; i++)
{
if (isNaN(document.Form_Aout.elements[i].value) ||
document.Form_Aout.elements[i].value.indexOf("-") != -1 ||
document.Form_Aout.elements[i].value.indexOf(".") != -1 ||
document.Form_Aout.elements[i].value.indexOf(",") != -1)
{
window.alert("PROBLEME: Vérifiez svp les quantités que vous avez saisies !");
document.Form_Aout.Total.value = 0;
return "NON";
}
else
Cout += document.Form_Aout.elements[i].value * Tab_PrixAout[i];
}
document.Form_Aout.Total.value = Cout;
}
else
{*/
for (var i = 0; i < document.Form_Produits.elements.length - 2; i++)
{
if (isNaN(document.Form_Produits.elements[i].value) ||
document.Form_Produits.elements[i].value.indexOf("-") != -1 ||
document.Form_Produits.elements[i].value.indexOf(".") != -1 ||
document.Form_Produits.elements[i].value.indexOf(",") != -1)
{
window.alert("PROBLEME: Vérifiez svp les quantités que vous avez saisies !");
document.Form_Produits.Total.value = 0;
return "NON";
}
else
{
if ((i == 10 || i == 11) && (document.Form_Produits.elements[i].value < 20) &&
(document.Form_Produits.elements[i].value != 0))
{
window.alert("ATTENTION: Les quiches et les ramequins ne se commandent pas à moins de 20 pièces !");
document.Form_Produits.elements[i].value = 0;
}
Cout += document.Form_Produits.elements[i].value * Tab_Prix[i];
}
document.Form_Produits.Total.value = Cout;
}
if ( Cout == 0)
{
window.alert("PROBLEME: Vous n'avez pas selectionné de produit !");
document.Form_Produits.Total.value = 0;
return "NON";
}
return "OUI";
}
</script>
</head>
<body>
<dl class="Style2"><p><strong>Nombre d'exemplaires ?</strong></p></dl>
<dd>
<div id="Produits" visibility: visible>
<form name="Form_Produits" enctype="text/plain">
<table width="505">
<tr>
<td width="57"><input type="text" size="5" name="DVD" class="TexteMarron12px" value="0" onchange="javascript:CalcTotal();"></td>
<td width="434" class="Style2"><b>DVD</b> à 20.-- Frs/pièce (frais de port en sus)</td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Pougnon" class="TexteMarron12px" value="0" onchange="javascript:CalcTotal();"></td>
<td class="Style2" width="434"><b>Pougnon</b> à 3.-- Frs/pièce (frais de port en sus) </td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Recueil" class="TexteMarron12px" value="0" onchange="javascript:CalcTotal();"></td>
<td class="Style2" width="434"><b>Recueil de parties</b> 5.-- Frs/pièce (frais de port en sus)
</td>
</tr>
<tr>
<td width="57">
<hr>
</td>
<td class="Style2" width="434"> </td>
</tr>
<tr>
<td width="57"><input type="text" size="5" name="Total" class="TexteMarron14px" value="0" readonly></td>
<td class="Style2" width="434">TOTAL DE LA COMMANDE </td>
</tr>
</table>
</form>
</div>
</body>
</html>