Chargement paresseux avec jsTree

Je suis en train de charger dynamiquement les nœuds d'un jtree quand ils sont développés. Le peu de documentation que j'ai trouvé est à la fin de cette page.

J'ai trouvé quelques solutions que de créer les nœuds un par un avec une boucle comme cette une. Je ne l'ai pas essayé, mais en regardant la page de documentation j'ai le sentiment que jstree doit prendre soin de vélo à travers les nœuds.

J'ai trouvé beaucoup de solutions qui utilisent plugins: ["json_data"]mais le plugins page de documentation ne parle pas de ce plugin. C'est qu'un vieux plugin qui n'est plus requis?

Mon actuel de la mise en œuvre utilise ce code pour charger l'ensemble de l'arbre d'un seul coup:

$.ajax({
    var pn = $('#project_number').val();
    url : "bomtree?part=" + pn,
    success : function(tree_content) {
        var data = $.parseJSON(tree_content);
        var config = {
            'core' : {
                'data' : data
            }
        };
        $('#bom_tree').jstree(config);
    }
});

J'ai modifié le code sur la page de documentation comme ceci:

$(function() {
    var pn = $('#project_number').val();
    $('#tree').jstree({
        'core' : {
            'data' : {
                'url' : function(node) {
                    return '/doc/test2';
                },
                'data' : function(node) {
                    return {
                        'part' : node.id === '#' ? pn : node.id
                    };
                }
            }
        }
    });
});

La même json texte fonctionne avec le premier code, maintenant avec le deuxième. La documentation dit The format remains the same as the abovedonc je n'ai pas le modifier.

J'ai essayé également de retour les mêmes données que dans l'exemple, ceci:

[
       { "id" : "ajson1", "parent" : "#", "text" : "Simple root node" },
       { "id" : "ajson2", "parent" : "#", "text" : "Root node 2" },
       { "id" : "ajson3", "parent" : "ajson2", "text" : "Child 1" },
       { "id" : "ajson4", "parent" : "ajson2", "text" : "Child 2" },
]

Mais le résultat est le même: jquery jette un Grésillement.erreur à la ligne suivante:

Sizzle.error = function( msg ) {
    throw new Error( "Syntax error, unrecognized expression: " + msg );
};

Où le contenu de msg est les données json renvoyé par le serveur.

Quel est le problème?

source d'informationauteur stenci | 2014-06-10