tree.aNodes[tree.aNodes.length] = child;
l_tree.innerHTML = tree;重新更细下容器即可

解决方案 »

  1.   

    我在哪个位置更新容器呢?
    ....不是发了2行代码,红色是新增的$("#search").keyup(function(){这个事件的ajax成功回调自后加上
      

  2.   

    这个不行,我换了个方法搜索并定位节点,但是不知道怎么让模糊查询出来的节点高亮显示!望指教
    帮忙解决了立刻结帖,这段代码也是引自你回复的另外一个帖子里。
    代码如下:  $("#search").keyup(
         function(){
         tree.closeAll();
         var nodename = document.getElementById("search").value;
     
         $.ajax({
             global: false,
             url: '../treeNodes/QueryNode',
             type: 'post',
             data: 'nodeName=' + nodename,
             dataType: 'text',
             cache: false,
             timeout: 10000,
             success: function (res) {
                 var arr=res.split(';');//;
    for(var i=0;i<arr.length;i++){
    tree.openTo(arr[i],true);
    }
             },
             error: function (xhr) { alert(xhr.responseText);}
         });
        }
        );
    此处虽然取到了节点,但是没有高亮显示,不好区别于其他节点...
      

  3.   

    生成的时候给显示的文本添加样式就行了                    if (nodeType == "0") {
                            child = new Node(nodeId, parentId, '<b>'+nodeName+'</b>', "javaScript:toSelf();" + nodeId + ";" + nodeType, nodeName);
                            child._hc = true;
                        } else if (nodeType == "1") {
                            child = new Node(nodeId, parentId, '<b>'+nodeName+'</b>', "javaScript:getService('" + address + "','" + jarName + "','" + parentId + "');" + nodeId + ";" + nodeType, nodeName);
                        } else if (nodeType == "2") {
                            child = new Node(nodeId, parentId, '<b>'+nodeName+'</b>', "javaScript:toPage('" + address + "');" + nodeId + ";" + nodeType, nodeName);
                            console.log(child)
                        }