Diji.Tree + JsonRestStore – sélectionnant le nœud par programme avec tree.set ("chemin"

J'ai ce problème. J'utilise dijit.Tree avec dojox.data.JsonRestStore comme source de données. Tous les nœuds sont embarqués. Lorsque j'essaie de sélectionner par programme un nœud en utilisant tree.set ("chemin", [1,2]), j'avance une erreur en disant "Impossible d'étendre le chemin d'accès non défini"

Est-il possible d'utiliser tree.set ("chemin" …) lorsque la structure arborescente est chargée dynamiquement?

Mon code contient 2 fichiers. Source.php est la mise en œuvre de la source de données

  1. Tree.php est disponible ici http://jsfiddle.net/hd2MZ/2/

  2. Source.php est disponible ici http://jsfiddle.net/6zu3d/

Aidez-nous 🙂

Je vois quelques problèmes potentiels …

  1. Vous devez spécifier le chemin d'accès au noeud souhaité à partir du nœud racine.
  2. Vous utilisez le ForestStoreModel qui crée un noeud racine sous les couvertures, car vous n'avez pas spécifié l'id pour le nœud racine lors de l'initialisation du modèle, le modèle ForestStore par défaut utilisera '$ root $' comme id pour le nœud racine.
  3. Je crois que les identifiants pour les articles dans le magasin de données sont des chaînes … pas des nombres entiers.

… où vous essayez de définir le chemin, j'essayerais:

tree.set("path", ['$root$', '1', '2']);