我遇到了将子节点附加到树的问题。情景是, 我想使用ajax调用加载节点箭头上的树节点。因此,为了获得树结构,最初只将根级节点传递给树,并且树工作正常,但是当我单击箭头时,它进行ajax调用,它采用下一级节点层次结构但它会覆盖以前的树结构。
我有:
<script type="text/javascript">
$(document).ready(function() {
$(function() {
var $tree = $('#themes');
$tree.tree({
autoOpen: false,
dataUrl: "{% url 'get_root_hierarchy' grpid node.pk %}",
});
$tree.bind(
'tree.open',
function(event) {
var node = event.node;
$.ajax({
async : true,
type: "GET",
url: "{% url 'get_hierarchy' grpid %}?id=" + node.id,
datatype: "html",
success: function(data) {
var data = $.parseJSON(data) ;
$tree.tree({
data:data
});
}
});
}
);
});
});
</script>
<div id="themes"> </div>
当我点击箭头进行ajax调用时,这会操纵并发送子节点层次结构,ajax success函数会正确接收输出,但它会覆盖整个树结构,然后显示该被点击节点的新结构。 我想将子结构附加到前一个节点结构,请建议我如何实现
答案 0 :(得分:0)
您是否尝试过append node功能?
success: function(data) {
var data = $.parseJSON(data) ;
$tree.tree(
'appendNode', data, node
);
}