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

ASP.NET Discussion :

Appel de javascript par code behind


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre très actif Avatar de Pynouz
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 274
    Par défaut Appel de javascript par code behind
    Bonjour,

    Mon titre n'étant pas très (pas du tout) explicite je vais un peu mieux expliquer mon problème.

    J'ai dans mon site web une fonction de routine qui s'éxécute et lance donc une série de fonction plus ou moins longue. Afin de faire patienter l'utilisateur et de lui montrer l'avancement de cette routine, il y a une série de gif qui s'enchaine au fur et a mesure.

    L'appel de ceux-ci se fait par une fonction javascript que voici :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    function changeretape(code)
            {
                document.getElementById('et' + code.substring(0, 1)).src = './Images/etape' + code + '.gif';
                if  (code == '5c')
                 {
                 document.getElementById('telescripteur').innerHTML = '<span id=\"LbInformation\">Conversion terminée.<br /><a href=\"./Accueil.aspx\">Cliquez-ici pour effectuer un nouveau traitement.</a></span>';
                 }
                 else
                 {
                 document.getElementById('telescripteur').innerHTML = '<span id=\"LbInformation\">Conversion en cours...</span>';
                 }
            }
    Puis, j'appel cette fonction Javascript à plusieur reprise dans ma fonction de routine comme ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ClientScript.RegisterStartupScript(PageChargement.GetType(), Code, "<script language=javascript>changeretape('"+Code+"');</script>");
    Le javascript s'éxecute.

    Ce qui me pose problème est que l'utilisateur ne vois pas les gif (donc le javascript appeler) au fur et a mesure.

    Comment pourrais-je faire afin qu'a chaque fois que mon js est appelé l'utilisateur puisse voir le résultat de celui-ci?

    J'espère avoir été clair sinon n'hésitez pas a me demander plus d'information ( de précision).

    Je vous remercie de m'avoir lu.

  2. #2
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Si j'ai bien compris, le javascript que tu executes doit faire apparaitre des gifs mais rien ne se passe, c'est bien cela ?
    La question est simple, es-tu sur dans ce cas la que ton javascript fonctionne ?

  3. #3
    Membre très actif Avatar de Pynouz
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 274
    Par défaut
    Mon javascript doit faire apparaitre 4 gif les uns après les autres.

    Il fonctionne correctement. Le problème est que ceux-ci apparaissent tous en même temps à la fin de mon thread.

    Alors que je voudrais qu'ils apparaissent à chaque appel.

  4. #4
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    ok, en mettant des timer peut etre ?

  5. #5
    Membre très actif Avatar de Pynouz
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    274
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 274
    Par défaut
    J'essaye de faire des test avec le timer mais le code ne passe jamais par mon evenement "Tick".

    Voici l'initialisation de mon timer :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    System.Web.UI.Timer timerJs = new System.Web.UI.Timer();
    timerJs.Tick+=new EventHandler<EventArgs>(timerJs_Tick);
    timerJs.Interval = 5000;
    timerJs.Enable= true;
    et mon evenement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     private static void timerJs_Tick(object sender, EventArgs e)
            {
                PageChargement.ClientScript.RegisterStartupScript(PageChargement.GetType(),CodeEtape, "<script language=javascript>alert('"+CodeEtape+"');</script>");
     
            }

  6. #6
    Membre éprouvé
    Inscrit en
    Septembre 2007
    Messages
    1 137
    Détails du profil
    Informations personnelles :
    Âge : 42

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 137
    Par défaut
    Tu as dit que les images se superposent, peut on essayer de désactiver l'ancienne image au moment ou la nouvelle apparait. y'a peut etre quelque chose á faire la-dedans

Discussions similaires

  1. appel Javascript from code behind
    Par mirtouf dans le forum ASP.NET
    Réponses: 18
    Dernier message: 03/03/2010, 08h43
  2. Appellé une fonction javascript en code behind
    Par 0xYg3n3 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 17/10/2007, 15h02
  3. [tout bête] JavaScript en code behind
    Par dahu17 dans le forum C#
    Réponses: 1
    Dernier message: 06/09/2007, 15h28
  4. Google Map API --> Javascript et code behind C#
    Par bridel dans le forum ASP.NET
    Réponses: 2
    Dernier message: 22/01/2007, 21h07
  5. [VB.NET]Javascript et code behind
    Par Dadou74 dans le forum ASP.NET
    Réponses: 1
    Dernier message: 17/11/2006, 16h30

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