Javascript得到TreeView被选中的所有节点ID

        function GetCheckedNode()
        
{
            
var treeView=document.getElementById('<%= treeViewSource.ClientID %>');
            
var children=treeView.getChildren();
            
var checkedIds=GetCheckedNodeIds(children[0]);
            
return checkedIds.substr(1,checkedIds.length);
        }

        
        
function GetCheckedNodeIds(node)
        
{
            
var ids='';
            
if(node.getAttribute("checked")==true)
            
{
                ids
+=','+node.getAttribute("ID");
            }

            
else
            
{
                
var childNodes=node.getChildren();
                
var childCount=childNodes.length;
                
if(childNodes.length>0)
                
{
                    
for(var i=0;i<childCount;i++)
                    
{
                        ids
+=GetCheckedNodeIds(childNodes[i]);
                    }

                }

            }

            
return ids;
        }
注:treeViewSource是TreeView控件。
被选中的意思是节点前的CheckBox被选中(checked)
若当前节点被选中,则不遍历其子节点。
最终返回选中节点ID用逗号分隔的字符串。

posted on 2008-06-12 09:08  白亚伟  阅读(2298)  评论(4编辑  收藏  举报

导航