У меня есть структура XML, которая выглядит следующим образом:
<RootFeature>
<Name>MainFeature</Name>
<Subfeatures>
<Feature>
<Name>Feature1</Name>
<Subfeatures>
<Feature>
<Name>Feature1_1</Name>
</Feature>
<Feature>
<Name>Feature1_2</Name>
</Feature>
<Feature>
<Name>Feature1_3</Name>
</Feature>
</Subfeatures>
</Feature>
<Feature>
<Name>Feature2</Name>
</Feature>
<Feature>
<Name>Feature3</Name>
</Feature>
<Feature>
<Name>Feature4</Name>
</Feature>
<Feature>
<Name>Feature5</Name>
</Feature>
<Feature>
<Name>Feature6</Name>
</Feature>
<Feature>
<Name>Feature7</Name>
</Feature>
</Subfeatures>
Я бы хотел использовать Jstree и создать дерево. Я пытался применить Jstree непосредственно к нему (XML), и у меня был тот же результат, как объяснено в этой теме:
Заполнение Jstree из строки XML
После преобразования его в Json (используя следующую библиотеку: https://goessner.net/download/prj/jsonxml/), У меня есть это:
"RootFeature":{
"Name":"Feature1",
"Subfeatures":{"Feature":[
{
"Name":"Feature1",
"Subfeatures":{"Feature":[
{"Name":"Feature1_1"},
{"Name":"Feature1_2"},
{"Name":"Feature1_3"}
]}
},
{"Name":"Feature2"},
{"Name":"Feature3"},
{"Name":"Feature4"},
{"Name":"Feature5"},
{"Name":"Feature6"},
{"Name":"Feature7"}
]}
Я искал, как применить Jstree к моей структуре, зная, что я должен следовать определенному формату, где теги <Name>
должны быть заменены на <text>
, <Subfeatures>
на <children>
, и избавиться от <Feature>
теги.
Я нашел эту тему на форуме: JsTree с пользовательскими данными json
но не смог применить решение .. и не понял его полностью, если честно.
Я даже пытался рекурсивно воссоздать дерево, используя данные Json, но я не могу создать массив «Children» с несколькими элементами с одинаковым именем «text», каждый из которых имеет значение (как, наконец, файл Json) ). Это либо:
"Children":
"text1":"Feature1",
"text2":"Feature2",
"text3":"Feature3",
или
"Children":
"0":"Feature1",
"1":"Feature2",
"2":"Feature3",
Если кто-нибудь знает, как я могу иметь дело с Jstree, используя мою структуру, или у вас есть идеи, пожалуйста.
Спасибо