日期:2014-05-16  浏览次数:20480 次

这里有用过net1.1的treeview控件的朋友吗?请帮忙看看这个遍历函数为什么不好用?
function   traverseAllChildren(node,cf,af){                         //遍历全部子节点。对满足cf条件函数的节点进行af函数操作    
                      var     childNodes,     i;    
                      childNodes     =     node.getChildren();    
                      for(i=0;i <childNodes.length;i++){    
                                              if(cf(childNodes[i])){    
                                                                      af(childNodes[i]);    
                                              }    
                                              if(childNodes[i].getChildren().length> 0){    
                                                                      traverseAllChildren(childNodes[i],cf,af);    
                                              }    
                      }    
}    
问题是遍历不全node的孩子,只要有一个孩子有孩子(这时进入递归了),node的余下的孩子就没遍历到。
请高手帮忙。谢谢

------解决方案--------------------
哦,不好意思,疏忽了
------解决方案--------------------
单看函数是没问题的,但vs2003一直有个引用js文件的bug,看看你是什么方式引用的?用 <script language= "javascript " src= "...js " type= "text/javascript "> </script> 的方式需要将js文件用记事本另存为utf-8格式,太容易出问题。用 <!-- #INCLUDE VIRTUAL = "...js " --> 的方式引用吧,它在每个页面里都插入了你的js文件的内容。