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 :

comment exécuter un button au chargement de la page ?


Sujet :

JavaScript

  1. #1
    Candidat au Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 2
    Points
    2
    Par défaut comment exécuter un button au chargement de la page ?
    Bonjour,

    J'ai crée un bouton RichFace qui ouvre un panel (hideModalPanel) qui apparaisse le temps que la page soit complètement constitué.

    je souhaiterai que le bouton soit exécuté au chargement de la page au lieu d'un clique sur le bouton a fin de lancer automatiquement le panel affichera "Please Wait "jusqu’à ce que la page soit totalement charger


    voici mon bouton qui exécute la méthode chargerLaPage qui affiche le message "Please Wait " :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <a4j:commandLink action="#{monBean.chargerLaPage}"      reRender="panelResultRefresh,formZones"							onclick="javascript:Richfaces.showModalPanel('panelLoading',{left:'auto',top:'auto'})"									window.onload="javascript:Richfaces.hideModalPanel('panelLoading',{left:'auto',top:'auto'});						javascript:Richfaces.showModalPanel('panelResult',{left:'auto',top:'auto'})">
    <h:graphicImage value="../images/loading.gif" width="17" height="17" title="chargement de la page" />
    </a4j:commandLink>
    voici le panel qui est lancé lorsqu'on clique sur le bouton il affiche un message"Please Wait" défini dans la méthode chargerLaPage:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <rich:modalPanel id="panelResult" styleClass="Ressource" autosized="true">
      <a4j:outputPanel id="panelResultRefresh">				
      <h:outputText styleClass="premierCaption" value="#{monBean.ressulta}" /><a4j:status id="actionStatus"
                        onstart="#{rich:component('panelResult')}.show('',{height:'80', width:'400'})"
                       onstop="#{rich:component('panelResult')}.hide()" />
     </a4j:outputPanel>
    </rich:modalPanel>
    est ce qu'il y'a une solution java-script ou autre pour lancer l'action du bouton au chargement de la page ?

    Merci de votre aide!!

  2. #2
    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 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 638
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    un bouton ne s'execute pas ...
    on peut appeler une fonction au chargement de la page et cela se fait en javascript .
    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 !

  3. #3
    Candidat au Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 2
    Points
    2
    Par défaut comment appeler chargerLaPage
    d'accord.
    comment on peut appeler la fonction java chargerLaPage de ma classe monBean
    avec javascript ?
    ma fonction chargerLaPage est défini dans la page sous forma de : action="#{monBean.chargerLaPage}", je ne sais pas comment faire pour l’appeler avec javascript !

  4. #4
    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 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 638
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    il faut comprendre la portée de chacun des langages ...

    java coté serveur
    js coté client
    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 !

  5. #5
    Candidat au Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 2
    Points
    2
    Par défaut comment appelé une méthode java avec javascript ?
    merci pour votre réponse, est ce que vous avez une idée pour lancer un panel ou une page qui apparaisse le temps que la page d'accueil soit complètement constitué? est ce qu'il y a une méthode javascript qui puisse me lancer le panel que j'ai développée pour chaque chargement de la page.merci

  6. #6
    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 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 638
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    ce sujet a deja été traité
    il suffit de mettre l'element dans un div et de masquer le div sur le onload de la page
    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 !

  7. #7
    Candidat au Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 2
    Points
    2
    Par défaut chargement de la page avec un timeout variable
    C'est vrai que le sujet a été traité, mais avec un timeout fixe comme 3 secondes: setTimeout("cach.visibility = 'hidden'", 3000);. Je souhaiterais que le timeout dépende du chargement de la page : tant que la fonction n'a pas chargé les données, le message "Veuillez patienter pendant le chargement de la page" bloque la page. Voici un exemple de chargement de page avec un timeout fixe de 3 secondes :
    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
    <html>
    <head>
     
    <style TYPE="text/css">   
    #cache {
        position:absolute; top:200px; z-index:10; visibility:hidden;
    }
    </style>
    <div id="cache"><table width=400 bgcolor=#FFFFFF border=0 cellpadding=2 cellspacing=0><tr><td
     align=center valign=middle><table width=100% bgcolor=#D7DDE6 border=0 cellpadding=0 cellspacing=0><tr><td
      align=center valign=middle><font face="Verdana" size=4><b><br>Veuillez patienter pendant le chargement de la page !
      <br><br></b></font></td>  </tr></table></td>  </tr></table></div>
    <script LANGUAGE="JavaScript">
     
    var nava = (document.layers);
    var dom = (document.getElementById);
    var iex = (document.all);
    if (nava) { cach = document.cache }
    else if (dom) { cach = document.getElementById("cache").style }
    else if (iex) { cach = cache.style }
    largeur = screen.width;
    cach.left = Math.round((largeur/2)-200);
    cach.visibility = "visible";
     
    function cacheOff()
    	{
    	setTimeout("cach.visibility = 'hidden'", 3000);
    	}
    window.onload = cacheOff
    </script>
     
    </head>
    <body>	
    </body>
    </html>
    merci de votre aide

  8. #8
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    16 971
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 16 971
    Points : 44 134
    Points
    44 134
    Par défaut
    comme mentionné...
    Citation Envoyé par SpaceFrog Voir le message
    ce sujet a deja été traité
    il suffit de mettre l'element dans un div et de masquer le div sur le onload de la page
    donc un simple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    window.onload = function(){
      document.getElementById('div_wait').style.display = 'none';
    };
    devrait suffire, pourquoi mettre un setTimeout?

  9. #9
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par NoSmoking
    pourquoi mettre un setTimeout?
    Oui, d'ailleurs, même question pour tout ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    var nava = (document.layers);
    var dom = (document.getElementById);
    var iex = (document.all);
    if (nava) { cach = document.cache }
    else if (dom) { cach = document.getElementById("cache").style }
    else if (iex) { cach = cache.style }
    largeur = screen.width;
    cach.left = Math.round((largeur/2)-200);
    cach.visibility = "visible";
    Pas de question technique par MP !
    Tout le monde peut participer à developpez.com, vous avez une idée, contactez-moi !
    Mes formations video2brain : La formation complète sur JavaScriptJavaScript et le DOM par la pratiquePHP 5 et MySQL : les fondamentaux
    Mon livre sur jQuery
    Module Firefox / Chrome d'intégration de JSFiddle et CodePen sur le forum

  10. #10
    Candidat au Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Merci Bovino, je vais tester votre solution, peut être je n'ai pas bien compris ce que SpaceFrog m'a expliqué.

    cordialement

  11. #11
    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 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    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 638
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    peut être je n'ai pas bien compris ce que SpaceFrog m'a expliqué.
    NoSmoking l'a pourtant mis en code
    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 !

  12. #12
    Candidat au Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    merci beaucoup NoSmoking je suis en train de tester votre solution

  13. #13
    Candidat au Club
    Femme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 2
    Points
    2
    Par défaut
    Merci SpaceFrog pour la remarque.désolé NoSmokingme je me suis trompé dans le nom, j'ai essayé de mettre en place vos conseils afin de déclencher le panel (panelLoading) au chargement de la page :

    solution tester N:1 (le panel ne s'affiche pas)
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <body onload="document.getElementById('Bouton1').style.display = 'none';>

    solution tester N:2 (le panel ne s'affiche pas)
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <body onload="document.getElementById('Bouton1')'.click();">

    solution tester N:3 (le panel est affiché mais pas cela qui lié a l'action de mon bean zoneBean action="#{zoneBean.synchroServeurs} )
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <body onload="javascript:Richfaces.showModalPanel('panelLoading',{left:'auto',top:'auto'})">

    voici le panel que je souhaite charger :

    Code java : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <a4j:commandLink id="Bouton1"    action="#{zoneBean.synchroServeurs}" reRender="panelResultRefresh,formZones"
    onclick="javascript:Richfaces.showModalPanel('panelLoading',{left:'auto',top:'auto'})"
    oncomplete="javascript:Richfaces.hideModalPanel('panelLoading',{left:'auto',top:'auto'});
    javascript:Richfaces.showModalPanel('panelResult',{left:'auto',top:'auto'})">
    <h:graphicImage value="../images/synchro.jpg" width="17" height="17" title="Synchroniser les serveurs" />
    </a4j:commandLink>

    donc ne n'arrive toujours pas à accéder à déclencher le panel lié à l'action java : action="#{zoneBean.synchroServeurs}.!!

    Merci de votres aides.

Discussions similaires

  1. Comment exécuter un fichier SQL à partir d'un choix radio button
    Par maserati dans le forum Développement Web en Java
    Réponses: 18
    Dernier message: 30/12/2011, 09h56
  2. Exécuter plusieurs actions au chargement d'une page
    Par okoweb dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 17/08/2010, 11h53
  3. [Datagrid] Comment Séléctionner une ligne au chargement de la page
    Par Eayoub dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 06/05/2010, 11h19
  4. excuter une fonction au chargement d'une page
    Par xess91 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 04/12/2009, 20h11
  5. Réponses: 2
    Dernier message: 21/07/2008, 00h24

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