JsTree с пользовательскими данными JSON

У меня есть эта структура в JSON, я не могу быть изменен по запросу.

{
        "Object": [
            {
                "url": "http://www.google.com"
            }            
        ],
        "id": 1,
        "name": "Redirection Rule",
        "Object": {
            "frequency": 1,
            "trigger": 1
        },
        "Object": {
            "http": "Redirect Url",
            "response": 301
        }
    }

Мне нужно использовать эту структуру для заполнения Jstree . Мне просто нужно использовать поля "id" и "name", как мне настроить jstree на использование "name" вместо "text" в качестве имени узла?

1 ответ

Решение

Или:

1) использовать jQuery dataFilter опция (это означает определение функции для dataFilter в вашем core.data Конфигурация jsTree),

или же

2) установить core.data Сам к функции, вручную сделать запрос и преобразовать его так:

$('#your-tree').jstree({
    core : {
        data : function (node, cb) {
            $.ajax({ url : ... }).done(function (data) {
                cb([{ "id" : data.id, "text" : data.name }])
            });
        }, ...

Вы можете найти больше информации о настройке core.data к функции здесь: https://github.com/vakata/jstree#population-the-tree-using-a-callback-function

Другие вопросы по тегам