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 :

afficher des données a l´interieur d´un tab panel sans recharger la page [Fait]


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 175
    Points : 48
    Points
    48
    Par défaut afficher des données a l´interieur d´un tab panel sans recharger la page
    Salut a tous,

    j´utilise dans mon application le menu avec tabulation (tab content qui a des onglets comme celui que l´on peut observer ici http://www.baldean.com/web/devzone.mysp).

    Ca fonctionne bien, mais j´ai mis des lien hypertextes et je voudrai qu´une fois que l´on clique dessus, que les resultats s´affichent a l´interieur du tab(de l´onglet) actif et non qu´il ouvre automatiquement le premier tab (onglet, quitte à moi de cliquer sur celui qui etait auparevent actif pour avoir mes resultats).

    Cela dit comment je peux avec javascript declencher l´execution et l´affichage ds la tabulation active sans pour autant completement recharger la page (en rechargeant il ne revient pas sur le tab qui etait activé il va au premier )

    Chaque onglet s´appele et s´affiche a l´interieur des balises
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="tabCont0">  .....</div>
    pour le premier,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <div id="tabCont2">...</div>
    pour le suivant et ainsi de suite.

    J´affiche dans des pages JSP, les liens sont parametrés et les données viennent d´une BD que je recuperes grace aux balises JSTL-Struts
    ce sont des liens du genre monsite.do?url1=papa&url2=maman et aussi monsite.do?link=1&link=2

    Enfonction du premier ou du deuxieme lien, ca doit afficher des donnes dans l´onglet 1 ou l´onglet 2 de mon tab.

    Merci de m´aider

    PS : j´ai telechargé ce tools sur http://www.baldean.com/web/devzone.mysp

  2. #2
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 175
    Points : 48
    Points
    48
    Par défaut
    aucune idée?

  3. #3
    Membre émérite
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Points : 2 814
    Points
    2 814
    Par défaut
    ajax

  4. #4
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 175
    Points : 48
    Points
    48
    Par défaut
    une piste à me conseiller avec Ajax SVP?

  5. #5
    Membre émérite
    Inscrit en
    Septembre 2002
    Messages
    2 307
    Détails du profil
    Informations forums :
    Inscription : Septembre 2002
    Messages : 2 307
    Points : 2 814
    Points
    2 814
    Par défaut
    le tutoriel, la fac

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 211
    Points : 196
    Points
    196
    Par défaut
    Tu utilises AJAX pour récupérer le contenu que tu veux charger, et tu inseres ton responseText directement dans le DIV cible.
    Regarde le tutoriel si tu ne connais pas Ajax, puis, imaginons que ton objet Ajax s'appelle MyAjax, tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    document.getElementById('tabCont2').innerHTML = myajax.responseText;

  7. #7
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 175
    Points : 48
    Points
    48
    Par défaut
    c´est clair je ne m´y connais pas en Ajax tout comme en javascript, je suis novice ds les deux domaines , j´utilise presque jamais les langages de script mais la je dois travailler avec ca. J´essaie de chercher en esperant que ca va aller mais si vous avez des exemples je suis preneur...
    Merci

  8. #8
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    211
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 211
    Points : 196
    Points
    196
    Par défaut
    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
     
    function createAjaxObject() {
    if(window.XMLHttpRequest){
    	var myajax = new XMLHttpRequest();
    }
    else{
    	var myajax = new ActiveXObject("Microsoft.XMLHTTP");
    }
    return myajax;
    }
    function doAjaxAction(Ele,File,Param1,Param2)
    {
    	var myajax = new createAjaxObject();
    	myajax.open("POST", File, true);
    	myajax.onreadystatechange = function()
    	{
    		if (myajax.readyState == 4 && myajax.status == 200)
    		{
    			if ( document.getElementById(Ele) )
    			{
    				document.getElementById(Ele).innerHTML = myajax.responseText;
    			}
    			else
    			{
    				eval(myajax.responseText);
    			}
    		}
    	}
    myajax.setRequestHeader('Content-Type','application/x-www-form-urlencoded');
    myajax.send(Param1=' + Param1 + '&Param2=' + Param2);
    }
    Tu mets ces deux fonctions dans ton HEAD, et sur le click ou tu veux que ton contenu soit chargé, tu fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    onclick="doAjaxAction('tabCont2','mon_fichier.php')"
    ou tabCont2 est le DIV ou tu veux que ton contenu soit chargé, et ou mon_fichier.php est le fichier qui renvoit ce contenu.
    Si tu dois envoyer des parametres a ta page, tu les rajoutes dans la fonction:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    doAjaxAction('tabCont2','mon_fichier.php','mon parametre 1','mon parametre 2')
    et tu les recupères par POST ($_POST['Param1'] et $_POST['Param2'] en php)

  9. #9
    Membre du Club
    Inscrit en
    Juillet 2003
    Messages
    175
    Détails du profil
    Informations forums :
    Inscription : Juillet 2003
    Messages : 175
    Points : 48
    Points
    48
    Par défaut
    hummm je programme avec J2EE mais je vais essayer d´exploiter ce code. Au fait avec cette commande
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     var myajax = new ActiveXObject("Microsoft.XMLHTTP");
    est ce que le code n´est pas orienté Internet Explorer?
    a bientot

Discussions similaires

  1. Réponses: 22
    Dernier message: 05/06/2018, 09h36
  2. Afficher une div en fonction d'une variable, sans rechargement de page
    Par skurseb dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 13/02/2012, 09h23
  3. comment afficher des données Access sur Word ??
    Par merlubreizh dans le forum Access
    Réponses: 7
    Dernier message: 16/09/2005, 15h07
  4. comment afficher des données Access sur Excel ??
    Par merlubreizh dans le forum Access
    Réponses: 9
    Dernier message: 14/09/2005, 14h38
  5. [BDE] Afficher des données dans un TDBComboBox
    Par $grm$ dans le forum C++Builder
    Réponses: 6
    Dernier message: 30/09/2004, 10h37

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