私はこのようにXMLからロードされたツリーを持っています。
さらに、ドラッグ アンド ドロップを有効にします。ドラッグ アンド ドロップでツリーを変更すると、新しいデータを取得できるようになり、新しい xml を生成できるようになります。
JSON でさえ、新しい xml を再生成するのに役立ちます。
function getJson(treeNode) {
treeNode.expandChildNodes();
var json = {};
var attributes = treeNode.attributes;
for(var item in attributes){
if (item == 'src' || item == 'text') { //only use required attributes
json[item] = attributes[item];
}
}
json.children = [];
if(treeNode.childNodes.length > 0){
for (var i=0; i < treeNode.childNodes.length; i++) {
json.children.push(getJson(treeNode.childNodes[i]));
}
}
return json;
}
// To use above function:
var comp = Ext.getCmp('tree-panel'); //id of the tree panel
var myJSON = getJson(comp.getRootNode());
console.log(Ext.encode(myJSON.children));
XMLの作成について考えることはできません。サーバー側で作成します。
誰かがそれに取り組むことができることを願っています。