Bonjour,
J'aimerais insérer une fonction js qui calcul les sous-totaux dans un tableau (html) de bon de commande. Le résultat est la quantité choisie dans un menu déroulant multiplié par le prix en fonction de la quantité (3 tranches de prix pour chaque article).
Mon problème est comment récupérer les prix qui ne sont pas dans des champs. Comme c'est différent pour chaque article et qu'il peut y avoir des modifications dans l'avenir, j'aimerais pouvoir récupérer automatiquement les valeurs pour éviter de les saisir dans la fonction ou dans les paramètres.
On peut donner des id aux <td> contenant les prix et récupérer la valeur avec getelementById (j'avoue que je ne m'y connais pas bien), ou utiliser des champs cachés et recopier manuellement les prix ? Faut-il définir un tableau en javascript ? Ou est-ce qu'il vaut mieux construire une base de données ? C'est sûrement la meilleure solution à long term, mais là, j'aimerais trouver une solution la plus rapide.
Voici le tableau en question (en réalité, il y a évidemment 50 lignes !)
<html>
<form id="orderform" name="orderform" method="post" action="mailto:xxx">
<table class="pricetable" cellspacing="1" >
<tr class="titrecolonne" >
<td class="ref" >Référence</td>
<td class="nom" >Dénomination</td>
<td class="parcent">Par 100 g </td>
<td class="par5cent">Par 500 g </td>
<td class="parkilo">Par kg</td>
<td class="quantity">Quantité</td>
<td class="prix" >Sous-total</td>
</tr>
<tr>
<td class="ref">xxx</td>
<td class="nom">YYY</td>
<td class="parcent">20</td>
<td class="par5cent">80</td>
<td class="quantity">150</td>
<td class="prix">
<select name="qtty_ref1" size="1" onchange="calculprix(this.value, this.name);calcultotal();">
<option value="-----">-----</option>
<option value="1">100g</option>
<option value="2">200g</option>
<option value="3">300g</option>
<option value="4">400g</option>
<option value="5">500g</option>
<option value="10">1kg</option>
<option value="15">1,5kg</option>
<option value="20">2kg</option>
</select>
</td>
<td width="73"><input name="montant_ref1" size="14" /></td>
</tr>
</table>
</form>
</html>
Deuxièmement, j'aimerais pouvoir remplacer dans la fonction qui calcule les montants:
document.orderform.montant_ref1.value=String(soustot);
par document.orderform.nom_champ_soustot.value=String(soustot);
"nom_champ_soustot" étant une variable que j'ai créé dans la même fonction (concaténation du "montant"+nom de la référence extraite du nom du champs qtty) , mais ça ne marche pas. Comment faire ???
