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 :

Attente avant poursuite ex�cution


Sujet :

JavaScript

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    24
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 24
    Par d�faut Attente avant poursuite ex�cution
    Bonjour,

    voici ma probl�matique...

    Je saisi un code dans un champ texte, si je tabule, une liste d�roulante est alors mise � jour pour afficher le libell� correspondant au code saisi s'il existe.
    Ensuite si je le souhaite, je clique sur un bouton pour ajouter le code+libell� dans un tableau...
    Ca, �a fonctionne au poil...

    Le souci, c'est que si je saisi un code et que je clique sur le bouton sans avoir tabul�, ma ligne est ajout�e : le code est ok - mais le libell� est � blanc, car la liste d�roulante n'a pas eut le "temps" de se mettre � jour... elle le fait apr�s que la ligne ait �t� ajout�e (pour cause d'iframe cach�, postant un formulaire, permettant de mettre � jour la dite liste d�roulante...)

    Donc l'id�e c'est d'am�liorer ma fonction d'ajout de ligne en disant que tant que le libell� est � blanc, on ne poursuit pas le traitement...

    Mais je ne vois pas tr�s bien comment �crire cela...

    J'avais pens� � �a :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
     
    libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text;
    while (libelle=="") {
    	libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text;
    }				}
    ...mais �a ne semble pas �tre la solution ad'hoc (�a boucle...).

    Si vous avez une id�e, je suis preneur...

    Merci par avance... et MEILLEURS VOEUX 2007 !

  2. #2
    Membre Expert
    Avatar de Gruik
    Profil pro
    D�veloppeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    D�tails du profil
    Informations personnelles :
    �ge : 42
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par d�faut
    Salut,

    Bah, il suffit de mettre � jour le libell� dans le code qui met � jour le menu deroulant non?
    Et effectivement, une boucle active ya rien de pire

  3. #3
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text; 
    var boucle=setInterval(function(){if(libelle!="") {clearInterval(boucle);
                                                                     suite(); 
                                                                      }} ,100)
     
    function suite(){ alert('on continue');
                             libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text;
                    }
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    24
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 24
    Par d�faut
    Tu peux m'expliquer un peu ton code s'il te plait ?
    Je l'ai essay� tel quel, mais n'ai pas vu de diff�rence... je voudrais voir �ventuellement comment l'adapter si n�cessaire, car cela me semble �tre une bonne approche...

    Merci par avance...

    Citation Envoy� par SpaceFrog
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text; 
    var boucle=setInterval(function(){if(libelle!="") {clearInterval(boucle);
                                                                     suite(); 
                                                                      }} ,100)
     
    function suite(){ alert('on continue');
                             libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text;
                    }

  5. #5
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    heu j'avais pas bien lu ta probl�matique...

    suffit d'intercaller un setTimeout pour laisser le temps de mise � jour ...
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
     
    libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text; setTimeout(function(){ libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text;};500)
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    24
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 24
    Par d�faut
    Mouais, c'est pas encore tout � fait �a...

    Le truc, c'est qu'il faudrait trouver un moyen d'attendre que l'iFrame cach� ait mis � jour les donn�es de la fen�tre appelante, avant de poursuivre les ex�cutions du script appelant...

    Pas simple c't'affaire l�

    Citation Envoy� par SpaceFrog
    heu j'avais pas bien lu ta probl�matique...

    suffit d'intercaller un setTimeout pour laisser le temps de mise � jour ...
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
     
     
    libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text; setTimeout(function(){ libelle = document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text;};500)

  7. #7
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    as tu une valeur t�moin dans la frame mise � jour ?
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  8. #8
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    24
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 24
    Par d�faut
    Non, si ce n'est la mise � jour de la liste d�roulante en question... Si il y a un libell�, c'est qu'il y a eut retour de l'iFrame...

    D'o� le test sur le contenu de la propri�t� "text" de la liste d�roulante...

    Citation Envoy� par SpaceFrog
    as tu une valeur t�moin dans la frame mise � jour ?

  9. #9
    R�dacteur/Mod�rateur

    Avatar de SpaceFrog
    Homme Profil pro
    D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activit� : D�veloppeur Web Php Mysql Html Javascript CSS Apache - Int�grateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par d�faut
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var boucle=setInterval(function(){    if(document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text; !="") {clearInterval(boucle); suite(); }} ,100) function suite(){ alert('on continue'); }
    Ma page Developpez - Mon Blog Developpez
    Pr�sident du CCMPTP (Comit� Contre le Mot "Probl�me" dans les Titres de Posts)
    Deux r�gles du succ�s: 1) Ne communiquez jamais � quelqu'un tout votre savoir...
    Votre post est r�solu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de D�veloppez !

  10. #10
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    24
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 24
    Par d�faut
    Merci bien pour ton aide SpaceFrog...

    Tu m'as bien mis sur la piste...

    En fait j'ai betement mis sur la propri�t� OnClick de mon bouton d'ajout :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    onclick="javascript:if (this.value != '0000') {setTimeout('MaFonction();', 100);}"
    C'�tait tellement �vident que je me suis pris la t�te sur le sujet... c'est le d�but d'ann�e, normal

    Merci bien pour ton aide !

    Citation Envoy� par SpaceFrog
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    var boucle=setInterval(function(){    if(document.all.CMBProduit.options[document.all.CMBProduit.selectedIndex].text; !="") {clearInterval(boucle); suite(); }} ,100) function suite(){ alert('on continue'); }

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 6
    Dernier message: 20/08/2013, 16h34
  2. Attente fermeture fenetre avant poursuite programme
    Par Orion34080 dans le forum VBA Access
    R�ponses: 4
    Dernier message: 13/05/2011, 16h49
  3. R�ponses: 2
    Dernier message: 15/12/2007, 16h52
  4. R�ponses: 6
    Dernier message: 19/10/2007, 15h44
  5. [Socket] Attente avant l'envoi ?
    Par Invit� dans le forum C++
    R�ponses: 1
    Dernier message: 21/09/2005, 18h59

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