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 :

Un alert() en plus et mon code fonctionne, sans il foire :|


Sujet :

JavaScript

  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 159
    Points : 160
    Points
    160
    Par défaut Un alert() en plus et mon code fonctionne, sans il foire :|
    Bonjour

    Bon bah voila j'ai un petit problème je suis tjs ne train de coder ma petite e-boutique en javascript/dhtml.

    Mais je rencontre un truc de fou en voulant mettre a jour mon récapitulatif de la commande... Je suis sur le point de devenir chauve la, sérieusement c'est du grand n'importe quoi

    Voici le bout du code qui pose problème :

    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
     
    function updateRecap()
    {
    	mycart.articlesdifferents=0;
    	mycart.totalarticles=0;
    	mycart.couttotal=0;
     
    	mycart.articlesdifferents=mycart.produits.length;
     
    	for(i=0;i<mycart.produits.length;i++)
    	{
    		var qte=mycart.produits[i].qte;
    		var prix=mycart.produits[i].prix;
     
    		mycart.totalarticles+=qte;
    		mycart.couttotal+=(qte*prix);
    	}	
     
    	$('totalarticles').innerHTML=mycart.totalarticles;
    	$('articlesdifferents').innerHTML=mycart.articlesdifferents;
    	$('couttotal').innerHTML=mycart.couttotal;
    }
    La première fois que cela est lancé, ca ne fait rien... la seconde fois il prends en compte le premier produit (alors que cela devrait etre le second), la 3eme fois il prends le second produit (ca devrait etre le 3eme) ainsi de suite...

    Le plus fou, ce qui me rend complètement cinglé, c'est que si je rajoute un alert() de n'importe quoi en début de fonction, tout fonctionne au poil !

    Help ! Depuis quand un alert() fait fonctionner ou non une fonction ?

  2. #2
    Expert éminent

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Points : 7 641
    Points
    7 641
    Par défaut Re: Un alert() en plus et mon code fonctionne, sans il foire
    Citation Envoyé par narnou
    Help ! Depuis quand un alert() fait fonctionner ou non une fonction ?
    Quand on a des problèmes de timing entre les différentes opérations.... Tu as un diagramme de séquence de ce qui est sensé se passer?

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 159
    Points : 160
    Points
    160
    Par défaut
    Diagramme de séquence je connais pas ce mot mais j'ai bien compris ce que tu voulais savoir.

    Alors en gros ce qui se passe c'est assez zarb...

    C'est une e-boutique en ajax/dhtml avec drag and drop

    Donc, le gars attrappe un produit, le drag vers le panier et le lache a cet endroit.

    Quand un produit est laché sur le panier une fonction est déclenchée.

    Cette fonction fait plusieurs choses :

    - Vérifie si ce produit est déja dans le panier ou pas en parcourant le tableau mycart.produits (si il y est déja, rien ne se passe)

    - Récupère un document XML par l'objet XMLHttp contenant les infos du produits

    - Rajoute le produit et ses quelques infos dans le tableau mycart.produits.

    - Construit un élément DOM correspondant au produit puis l'injecte avec une opacité de 0

    - Lance une fonction pour faire un "fade in" vers une opacité a 100

    - Et enfin lance ma fonction updateRecap() qui doit mettre a jour visuellement le récapitulatif de la commande


    Voila... en espérant que tu pourras m'aider :'(

  4. #4
    Expert éminent

    Avatar de denisC
    Profil pro
    Développeur Java
    Inscrit en
    Février 2005
    Messages
    4 050
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur Java
    Secteur : Service public

    Informations forums :
    Inscription : Février 2005
    Messages : 4 050
    Points : 7 641
    Points
    7 641
    Par défaut
    Citation Envoyé par narnou
    - Récupère un document XML par l'objet XMLHttp contenant les infos du produits

    - Rajoute le produit et ses quelques infos dans le tableau mycart.produits.
    Et je suppose que c'est entre ces deux que ça ne fonctionne pas, non?

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    159
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 159
    Points : 160
    Points
    160
    Par défaut
    Nonon, je récupère bien les infos et mon injection est correcte visuellement à part pour le récapitulitif

    Mais c'est bon j'ai trouvé, je suis un pur zéro, j'avais mis mon appel a updateRecap() en dehors de mon onreadystatechange...

    Ca marche nickel, désolé d'avoir dérangé

Discussions similaires

  1. Mon code fonctionne en mode debug et pas en release
    Par teddyalbina dans le forum Général Dotnet
    Réponses: 2
    Dernier message: 22/02/2011, 00h16
  2. Réponses: 5
    Dernier message: 17/02/2011, 14h45
  3. Réponses: 6
    Dernier message: 12/04/2007, 13h58
  4. [EasyPHP] Je n'arrive plus à exécuter mon code
    Par nath-0-0 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 22/08/2006, 16h57

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