Посмотрите на этот другой ответ от меня, так как он вам понадобится:
Как вы форматируете элементы "li" и "a" DOM в jsTree, устанавливая их класс?
По сути, вам нужно построить JSON, как вы это делаете сейчас, в бэкэнде, и поскольку вы знаете, какие узлы нужно отключить (или стилизовать), вы можете установить разные имена классов CSS или разные атрибуты, например, для Например, class="disabled"
или rel="disabled"
в этом ответе JSON, как показано в ссылке.
Я не знаю, какой уровень настройки вы должны выполнить в этих узлах, но их стилизация будет достаточной для изменения шрифта и фона.
Затем, как вы сказали, вы можете использовать плагин Types для настройки поведения этих "отключенных" узлов, т.е.
types: {
"disabled": {
"select_node": false,
"open_node": false,
"close_node": false,
"create_node": false,
"delete_node": false
}
}
Обратите внимание, что мы определили тип и назвали его «отключенным», поэтому вам нужно будет поместить rel="disabled"
в каждый <li>
элемент (узел), который вы хотите отключить. Именно так jsTree ищет типы по умолчанию, используя атрибут rel .
Надеюсь, это поможет вам.