Mise à jour de champs de formulaires

ecritel Messages postés 3 Date d'inscription mercredi 10 juillet 2002 Statut Membre Dernière intervention 28 avril 2005 - 28 avril 2005 à 02:33
monjal26 Messages postés 45 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 21 septembre 2006 - 29 avril 2005 à 10:50
Hello,

J'ai un petit pb pour finaliser une page qui doit me permettre de générer des factures html.

Pour calculer le montant total d'une ligne je fais

function calculate()
{
document.cart.total1.value = dp((document.cart.puht1.value)*(document.cart.qte1.value))
}

mais pour que ce calcul soit exact, j'ai dabord besoin de définir document.cart.puht1.value en fonction del'article sélectionné dans le menu déroulant... et pour ça je voudrais pouvoir faire un truc dans le genre :

temp=document.cart.article1.value (cela correspond à l'id de la'rticle sélectionné)
temp2='document.cart.art'+temp+'.value' (le champ caché art"id" a comme valeur le prix de l'article)

Le problème si je fais cela c'est que la valeur temp2 est ensuite comprise comme une chaîne de caractères et donc temp2 = document.cart.art3.value par exemple si l'id de l'article sélectionné dans le menu déroulant est 3

Question : comment faire pour que temp2 correspondent bien à la valeur du champs art3 dans l'exemple ci-dessus ?

Je ne sais pas si je suis très clair dsl... et merci par avance si vous me comprenez et que vous pouvez solutionner mon pb !!

2 réponses

cs_djagger Messages postés 536 Date d'inscription lundi 5 mai 2003 Statut Membre Dernière intervention 29 janvier 2009 1
29 avril 2005 à 10:40
Salut !

Il faut que t'utilise la fonction eval() pour faire le lien entre la chaine de char et le nom de la variable !

eval('document.cart.art'+temp+'.value');

voila !
a+++
0
monjal26 Messages postés 45 Date d'inscription lundi 5 avril 2004 Statut Membre Dernière intervention 21 septembre 2006
29 avril 2005 à 10:50
salut, ça ça marche sinon


function a(){
temp=document.cart.article1.value
;
var temp3='art'+temp;


var temp2=document.getElementById(''+temp3+'').value;
alert(temp2);


}
0
Rejoignez-nous