Bonjour,

Je sais qu'il y a des tonnes de topics à ce sujet. Mais j'ai beau les lire et relire, Je n'arrive pas à les adapter.

Je pense que ça viens du manque de maitrise des stores de ma part...

Ça me parait pourtant simple, je dois remplir un FilteringForm avec des données JSon récupérer par une requête Ajax. L'objet JSon récupérer possède la structure suivante :
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
{
     status:...,
     message:...,
     responses:
          [
               {
                    id:...
                    user:{...}
               },
               {
                    id:...
                    user:{...}
               },
               ...
          ]
}
"status" et "message" indiquent le status de la requête (Failed, Success...) ainsi qu'un message optionnel indiquant la cause de l'erreur.
"responses" est un tableau contenant les résultats. C'est cette liste qui doit être affichée dans le FilteringSelect.

1ère question : comment indiquer au store que la liste des données est "responses" et non pas la racine de l'objet ?
2ème question : comment indiquer au FilteringSelect que l'id est "user.id" et le label "user.fullName" ?

Voici mon store :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
this.membersStore = new dojo.data.ItemFileReadStore({
     url: lib.utils.getSlashedUrl() + "ajaxGetMembers?responsibility=" + this.responsibility,
});
Et voici mon widget :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
this.membersSelect = new dijit.form.FilteringSelect(
     {
          store: this.membersStore,
     }, 
     dojo.query(".selectMembers", this.container)[0]
);
PS : la requête est envoyée par memberStore (vérifié avec Firebug), mais il semble être vide.