当页面加载如下时,我正在以编程方式加载 dynatree
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)
}
上面的代码只删除了一个节点。我在这里想念什么。提前致谢
更新 我通过以下代码尝试了一种解决方法
function reload(data)
{
$("#tree").remove();
$('#test').html('<div id="tree"></div>');
$('#tree').dynatree(); //reinitialize the tree
loadTree(data);
}
它确实重新加载,但无法通过延迟加载填充子节点