Как я могу загрузить JSTREE с помощью встроенного JSON? - PullRequest
2 голосов
/ 21 сентября 2010

Вот код jstree:

 $("#tree").jstree({
          "json_data": {
              "data": treedata,
              "progressive_render": true
          },
          "plugins": ["themes", "json_data"]
      }); 

, где treedata содержит немного Json.К сожалению, ничего не рендерится.Примеры, которые я нашел, предназначены для ajax-загрузки Json, но сейчас я проверяю концепцию со встроенным Json.Это действительно Json, но jstree вообще ничего не рендерит.

Может кто-нибудь сказать, что я делаю неправильно?

"дерево" является действительным <div>

1 Ответ

3 голосов
/ 30 сентября 2010

Ваши трэдаты json или json string?Если это строка json, вам сначала нужно использовать var treedata= $.parseJSON(treedatastring);.

Я использую этот код на текущей странице, и он работает.Я знаю, что вы говорите, что ваш JSON действителен, но вы все равно можете опубликовать его или протестировать на этом сайте

var jsonConverted = $.parseJSON(jsonData);
    $('#tree').jstree({
        "json_data": {
            "data": jsonConverted
        },
        "themes": {
            "theme": "default",
            "url": "/Content/Styles/Default/themes/default/style.css",
            "dots": false
        },
        "plugins": ["themes", "json_data", "ui", "crrm"]
    });

Где jsonData= '[{"attr": { "id": "someid"}, "data": { "title":"SomeTitle", "icon": "/Content/images/FolderIcon.png"}, "children":[]}]';

Убедитесь, чтоваших одинарных и двойных кавычек, потому что это имеет большое значение.

...