次のようにページが読み込まれると、ダイナツリーをプログラムで読み込んでいます
function loadTree(data)
{
var rootNode = $("#tree").dynatree("getRoot");
$.each(data, function () {
var childNode = rootNode.addChild({
title: this.agent_code + ' - ' + this.holder_name,
tooltip: this.holder_name,
isFolder: true,
key:this.agent_code,
});
});
}
サーバーから新しいデータを取得し、新しいノードをロードしたい後、古いノードは削除されません。
function reload(data)
{
$("#tree").dynatree("getRoot").visit(function(node){
node.remove();
});
loadTree(data)
}
上記のコードは、1 つのノードのみを削除します。ここで何が欠けていますか。前もって感謝します
更新 次のコードを使用して回避策を試しました
function reload(data)
{
$("#tree").remove();
$('#test').html('<div id="tree"></div>');
$('#tree').dynatree(); //reinitialize the tree
loadTree(data);
}
リロードは行いますが、遅延読み込みによって子ノードを設定することはできません