IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

[DOM] firefox et onchange


Sujet :

JavaScript

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    321
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2006
    Messages : 321
    Points : 142
    Points
    142
    Par défaut [DOM] firefox et onchange
    Bonjour,

    Après avoir fait une recherche sur le site, je n'ai rien trouvé.
    j'ai un onchange sur mon select , sous ie, il marche tres bien, voyez par vous meme: http://www.assurchien.fr/formules/index.php

    Sur firefox, je n'ai meme pas mon alert et meme si je met que ça dans la fonction.

    Voici le code javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    <script>
    function verif_form(tarif,qte)
    {
    	var somme=0;
    	var cumul=0.0;
     
    	if(qte>0)
    	{
     
    		for (var i = 0; i < document.nb_formules.elements.length; i++) 
    		{
    			if(document.nb_formules.elements[i].value==0)
    			{
    				document.nb_formules.elements[i].disabled=true;
    			}
    		}
    	}
    	else
    	{
    		for (var i = 0; i < document.nb_formules.elements.length; i++) 
    		{
    			document.nb_formules.elements[i].disabled=false;
    		}
    	}
     
    	for (var i = 0; i < document.nb_formules.elements.length; i++) 
    	{
    		if(document.nb_formules.elements[i].name.substring(0,8)=="formule_")
    		{
    			somme = somme + parseInt(document.nb_formules.elements[i].value);
    			if(parseInt(document.nb_formules.elements[i].value) > 0)
    			{
    				deb = document.nb_formules.elements[i].name.substring(8,document.nb_formules.elements[i].name.length);
    				nom_champ= "tarif_"+deb;
    				cumul = cumul + ( parseFloat(document.getElementById(nom_champ).value) * document.nb_formules.elements[i].value);
    			}
    		}
        }
    	if(cumul!=0.0)
    	{
    		document.getElementById("totalmensuel").innerHTML = "&nbsp;&nbsp;&nbsp;&nbsp;Total par mois : "+cumul+" €/mois";
    		document.getElementById("etape").style.display="block";
    	}
    	else
    	{
    		document.getElementById("totalmensuel").innerHTML = "";
    		document.getElementById("etape").style.display="none";
    	}
    	document.nb_formules.nb_animaux.value = somme;
    	return true;
    }
     
    </script>
    mon select:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <select name="formule_{ID_PRODUIT}_{ID_REF}" onChange="verif_form({TARIF_MENSUEL},this.value);">
    Pourquoi?

  2. #2
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Bonjour,
    ce n'est pas l'évènement qui est en cause, mais la syntaxe que tu utilises pour l'accès aux objets de ta page qui n'est pas valide.
    Donne des ID aux objets et fais-y référence avec document.getElementById('id_objet')
    Ca passe sur tout les nav ...

    A+
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  3. #3
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Je te recommande d'installer les extensions FireBug et Web Developer sur ton
    FireFox, ça t'aidera à trouver les problèmes de ce type.

    D'autre part, tu devrais passer ta page au validateur de w3c. Un code conforme
    au standards est la base pour des scripts fonctionnels.
    Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    321
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2006
    Messages : 321
    Points : 142
    Points
    142
    Par défaut
    j'ai rajouté les extensions mais je ne sais pas comment m'en servir!!

    Je ne vois pas pourquoi passer par des id, ça va résoudre le problème, car sur IE ça marche et en plus, le problème sur firefox c'est que meme en ne mettant qu'un alert dans la fonction , il ne l'affiche pas

  5. #5
    Expert éminent sénior

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    13 474
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2007
    Messages : 13 474
    Points : 36 571
    Points
    36 571
    Par défaut
    Citation Envoyé par taka10
    Je ne vois pas pourquoi passer par des id, ça va résoudre le problème,
    Et si tu testais ?
    car sur IE ça marche
    Si IE était une référence en terme de développement ça se saurait
    et en plus, le problème sur firefox c'est que meme en ne mettant qu'un alert dans la fonction , il ne l'affiche pas
    Quand JS planté, JS plus marcher
    Pour tout savoir sur l'utilisation du forum

    En postant votre message, n'oubliez pas les Règles du Club.

  6. #6
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Citation Envoyé par taka10
    j'ai rajouté les extensions mais je ne sais pas comment m'en servir!!
    Web Developer ajoute une barre d'outil, il te faut tester pour décourir, c'est
    aussi accessible par un menu contextuel sur la page.

    Pour FireBug y a un bouton en bas à droite de la fenêtre, il faut d'abord activer
    firebug (attention, il faut activer une fois pour les page hébergée et une autre
    fois pour les pages en local)

    Ce qui est pratique avec FireBug pour débuter c'est la console, elle affiche les
    message d'erreur javascript dedans. D'autre part le bouton "inspect" est un
    vrai bonheur, tu peux observer ton DOM.

    A noter aussi que tu peux utiliser console.log('message') au lieu de alert, c'est
    bien moins agaçant. (ne pas oublier de virer les console.log après tes tests) car
    IE ou FF sans FireBug ne les comprendront pas.
    Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !

  7. #7
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    321
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2006
    Messages : 321
    Points : 142
    Points
    142
    Par défaut
    Ce qui est pratique avec FireBug pour débuter c'est la console, elle affiche les
    message d'erreur javascript dedans
    il ne me met aucune erreur?

    A noter aussi que tu peux utiliser console.log('message') au lieu de alert, c'est
    bien moins agaçant.
    il ne m'affiche rien

  8. #8
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Jette un oeil ici pour voir ce qui est faisable
    http://www.getfirebug.com/
    Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !

  9. #9
    Membre habitué
    Profil pro
    Inscrit en
    Février 2006
    Messages
    321
    Détails du profil
    Informations personnelles :
    Localisation : France, Nord (Nord Pas de Calais)

    Informations forums :
    Inscription : Février 2006
    Messages : 321
    Points : 142
    Points
    142
    Par défaut
    voici l'erreur que j'ai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    deprecated arguments usage
    [Break on this error] var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.l...
    index.php (line 162)

  10. #10
    Rédacteur
    Avatar de marcha
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2003
    Messages
    1 571
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2003
    Messages : 1 571
    Points : 2 351
    Points
    2 351
    Par défaut
    Je crois qu'il faut que tu donnes plus de code
    Si ton code fait plus d'une ligne, c'est que tu as mal choisi ton langage !

Discussions similaires

  1. [DOM] Error calling method on NPObject! (QuickTime + DOM + Firefox)
    Par robmayol dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 18/12/2008, 17h38
  2. [DOM] Firefox only : récupération d'un value créé par appendchild
    Par speedev dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 20/12/2007, 14h05
  3. [DOM] [javascript] pb IE/Firefox
    Par topolino dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 12/12/2005, 10h20
  4. onChange sur Checkbox prob IE vs FireFox
    Par Teufboy dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 18/11/2005, 09h02
  5. [DOM] Evènement onChange
    Par plasticgoat dans le forum Général JavaScript
    Réponses: 7
    Dernier message: 08/11/2005, 11h25

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo