2009-08-10 9 views
0

J'ai réussi à écrire une fonction qui focalise un nœud donné. Maintenant, je veux l'appeler après la création d'arbres. Puisque je construis l'arbre avec php et l'envoie via AJAX, je veux envoyer le noeud pour se concentrer sur l'arbre. Par conséquent, j'ai trouvé cette solution:Dijit Tree et l'événement postCreate (dojo 1.3)

< script type = "dojo/connect" événement = "postCreate" > focusTreeNode ("'. $ This-> focusitem.'"); </script >

Cela ne déclenche pas l'événement. Mais si j'utilise dojo/méthode à la place, il se déclenche mais l'arbre n'est plus dessiné. J'ai découvert que dojo/méthode remplace le crochet et les crochets dojo/connect dans la chaîne. Je suis vraiment confus maintenant et l'aide serait très appréciée puisque je suis coincé dans un projet avec une forte pression temporelle.

Merci! Micha

Répondre

1

Je soupçonne que votre code postCreate() se déclenche mais il se produit avant que vos TreeNode soient créés.

Si vous pouvez effectuer une mise à niveau vers Dojo 1.4, il existe un événement onLoad auquel vous pouvez vous connecter.

0

Je trouve que postCreate ne se déclenche pas pour dojo/connect pour une raison que vous avez trouvée (et pour dojo/méthode). "startup" fonctionne avec dojo/connect.

<script type="dojo/connect" data-dojo-event="startup"> 
    console.log("I will execute on startup"); 
</script>