Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] [Résolu] Récuperation JSON côté client

Posted by andrfid on 07/08/2008 10:22

Bonjour, 'suis assez nouveau sur Jelix et la programmation web en générale alors excuses si ma question paraît un peu idiote.

Pour reprendre l'exemple du manuel, voici mon controlleur:

code

 class defaultCtrl extends jController
 {	
    ...
 
    function testJson()
    {
        $rep = $this->getResponse('json');
		
        $rep->datas = array('Nom' => 'Dupont', 'Prenom' => 'Jean');
		
        return $rep;
    }
        
    ...
 }

Comment récupérer ces données côté client? J'utilise jQuery, j'essaie avec la méthode $.getJSON() qui prend en paramètre un url, et c'est là mon problème, j'ai essayé de passer {jurl 'AjaxTests~default:testJson'}, mais apparemment, c'est pas comme ça qu'on fait.

Merci d'avance.

  [Opened] Re: Récuperation JSON côté client

Reply #1 Posted by laurentj on 07/08/2008 14:40

Salut,

j'ai essayé de passer ..

Tu fais comment exactement ?

  [Opened] Re: Récuperation JSON côté client

Reply #2 Posted by andrfid on 07/08/2008 15:18

Voici mon script:

code

 {literal}
   $(document).ready(
     function()
     {
       $(".testJSON").click(
         function()
         {
           $.getJSON(
 {/literal}
             "{jurl 'AjaxTests~default:testJson'}",
 {literal}
             function(data)
             {
               $.each(
                 data,
                 function(entryIndex, entry)
                 {
                   // Quelques traitements ici
                 }
               );
             }
           );
         }
       );
     }
   );
 {/literal}
 

  [Opened] Re: Récuperation JSON côté client

Reply #3 Posted by laurentj on 07/08/2008 22:57

Regarde alors le source de la page générée, récupère l'url générée, écrit la directement dans la barre d'adresse du navigateur, et regarde ce que ça fait.

  [Opened] Re: Récuperation JSON côté client

Reply #4 Posted by andrfid on 07/09/2008 09:29

Voici l'url obtenu: /jelix/Ajax/www/index.php?module=Ajax&action=default:testjson

Je le met dans la barre d'adresse et j'obtiens une page vide, par contre, si je remplace & par & tout court, j'obtiens bien le résultat, c'est à dire:

code

 {"nom":"dupont","prenom":"jean"}

  [Opened] Re: Récuperation JSON côté client

Reply #5 Posted by laurentj on 07/09/2008 17:58

Dans ce cas :

 {jurl 'AjaxTests~default:testJson', array(), false}

Mettre donc le false quand on écrit une url dans du javascript.

  [Opened] Re: Récuperation JSON côté client

Reply #6 Posted by andrfid on 07/10/2008 08:26

Merci laurentj, c'est bien ça.

 
Page
  1. Re: Récuperation JSON côté client