11548 sujets

JavaScript, DOM et API Web HTML5

Salut à tous!

Voilà je m'en remet à vous, j'ai pourtant chercher de longues heures durant mais impossible de trouver la solution (je suis pas très fort en javascript).

Alors voilà mon petit script pour commencer :




function change_prix()
{
elem = document.getElementById("aff_prix");
prix_name="prix_"+document.form.list_taille.value+"";

elem.innerHTML="<b>"+document.form.eval(prix_name).value+" </b>";
}




En fait je récupère une valeure cachée en fonction de mon choix dans un menu déroulant.
-elem correspond au texte que je vais modifier.
-prix_name est le nom du champ caché dont je veux récupérer la valeur (en fonction du choix du menu déroulant donc)
-la dernière ligne se charge de remplacer un texte par la valeur de mon champ caché


Problème ! Cela ne marche que sous Firefox. Aucun résultat sous IE, Opera ou Safari ! C'est au niveau du eval() que cela semble bugger.
SVP Auriez vous une solution?? Je ne vois pas du tout !
Modifié par Walvince (18 Jun 2008 - 13:56)
Bon j'ai résolu mon problème !^^

Beaucoup de réflection pour une ligne de code en plus, enfin le principal c'est que cela marche lol


Voici ma solution pour ceux que ca intéresserait :

function change_prix()
{
elem = document.getElementById("aff_prix");
prix_name="prix_"+document.form.list_taille.value;
dd=document.getElementById(prix_name).value;

elem.innerHTML="<b>"+dd+" €</b>";
}



J'ai supprimé le eval() en passant par une étape intermédiaire grace au "getElementById".