Как вы форматируете элементы "li" и "a" DOM ​​в jsTree, устанавливая их класс? - PullRequest
4 голосов
/ 28 декабря 2011

По сути, у меня есть jsTree, и мне нужно отформатировать его li и a DOM, добавив пользовательский класс вКаждый тип.В документации не ясно, как это сделать, и, насколько я могу судить, нет никакого способа добавить пользовательский класс, любое форматирование должно быть путем переопределения темы jquery или редактирования исходного кода jsTree.Я согласен с тем, чтобы делать это в данных JSON или более эффективно при объявлении «типов», как показано в следующем примере:

            $("#container").jstree({
                "plugins" : ["themes", "json_data", "ui", "themeroller", "types"],
                "json_data" : {"data": my_json_data},
                "core" : { 
                    "initially_select" : [ init_id] 
                },
                "types" : {
                    "valid_children" : [ "test_type" ],
                     "types" : {
                        "test_type" : {
                            "valid_children" : [ "default", "test_type" ],
                            "icon" : { "image" : "/includes/icon.gif"}
                        }
                    }
                },
                "themes" : {
                    "dots" : true,
                    "icons" : true
                }
            });

1 Ответ

3 голосов
/ 02 марта 2012

Если вы хотите сделать это в ответе JSON, это работает для меня:

{ 
  "attr": { "class": "some-class1", "id": "node_1" },
  "data": { 
    "attr": { "class": "some-class2", "href": "", "title": "node title" }
  }
}

Первый attr относится к тегу <li>, а второй attr (внутренние данные) относится к тегу <a>.

...