1

几天来,我一直在与 jsTree 苦苦挣扎。这很简单,但什么都没有发生。这是脚本:

$(document).ready(function () {

$("#TreeView2").jstree({
    "json_data": {
        "data": [{
            "data": "A node",
                "metadata": {
                id: 23
            },
            "children": ["Child 1", "A Child 2"]
        }, {
            "attr": {
                "id": "li.node.id1"
            },
            "data": {
                "title": "Long format demo",
                "attr": {
                    "href": "#"
                }
            }
        }]
    },
    "plugins": ["themes", "json_data", ]
}).bind("select_node.jstree",

function (e, data) {
    alert(data.rslt.obj.data("id"));
});
});

直截了当,直接出书。这是标记结果:

<div id="TreeView2" class="jstree jstree-1 jstree-default">
     <ul></ul>
</div>

除了 div 容器上的类之外,什么都没有呈现。如果我从 ajax 帖子中检索 json 数据也是如此。没有。我的控制台中甚至没有注册 ajax 帖子。也没有错误。如果我使用内联 html 标记作为数据源运行该插件,则该插件可以工作。与现有标记一样。

该脚本位于 document.ready 函数中。开始的标记只是一个带有 ID 的 div。所有插件脚本均已正确加载。我究竟做错了什么?

4

2 回答 2

2

更改脚本以运行onLoad.

小提琴:http: //jsfiddle.net/9wBET/

于 2013-02-26T14:48:17.380 回答
1

事实证明,jstree 文档除了非常薄弱且有时不存在之外,它纯粹是过时的虚假信息,而且非常错误。问题中的示例取自他们的文档/示例。我不得不完全重写整个事情。jstree 甚至没有渲染的主要原因是缺少多个插件,例如“ui”和“types”。我基本上从 10 个不同的站点和指南中找到了有关如何使用动态 json 数据等的信息。

于 2013-03-22T12:55:36.283 回答