Пользовательские значки не отображаются во вновь созданном узле JsTree - PullRequest
0 голосов
/ 25 января 2020

Мой код JsTree выглядит следующим образом:

<div id="Demo">
    <ul>
        <li>
            Root node 1
            <ul>
                <li data-jstree='{"type":"demo"}'>Child node 1</li>
                <li data-jstree='{"type":"demo2"}'>Child node 2</a></li>
            </ul>
        </li>
    </ul>
</div>

 $('#Demo').jstree(
                        {
                            "types": {
                                "demo": {
                                    "icon": "glyphicon glyphicon-flash"
                                },
                                "demo2": {
                                    "icon": "glyphicon glyphicon-ok"
                                }
                            },
                            "core": {
                                "check_callback": true,
                                "themes": {
                                    "default": "large",
                                    "dots": false
                                }
                            },
                            "plugins": ["wholerow", "changed", "types", "json_data"]
                        });

Вот как я добавляю новый узел в дерево:

$("#Demo").jstree('create_node', _parentId_Of_Selected_Node, { li_attr: { "data-jstree": "{\"type\":\"demo\"}" }, text: myData }, 'last', function (newNode) { _newlyCreatedNodeId = newNode.id });

Когда дерево загружено, пользовательский значок виден, но когда я Добавить новый узел, пользовательский значок не отображается.

Я также пытался обновить sh древовидную структуру, но он удаляет все мои созданные пользователем узлы:

$('#Demo').jstree(true).refresh();

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

enter image description here

Мое дерево выглядит так после добавления пользовательского узла:

enter image description here

...