<script type="text/javascript" > 
        function ChooseTreeNodes() { 
            var result = ""; 
            var nodes = document.getElementById(" <%= TreeView1.ClientID %>").getElementsByTagName("input"); 
            for (var i = 0; i < nodes.length; i++) { 
                if (nodes[i].type == "checkbox" && nodes[i].checked) { 
                    var p = nodes[i].parentElement || nodes[i].parentNode; 
                    result += p.getElementsByTagName("a")[0].innerHTML + " "; 
                } 
            } 
            window.opener.Choose(result); 
            window.close(); 
        } 
    </script> 
这样获得的是 TreeNode 的 text 值,如果 要获得 value 值呢? 

解决方案 »

  1.   

    C# cs 代码  在AfterSelect方法中
     private void trvDept_AfterSelect(object sender, TreeViewEventArgs e)
            {
                this.txtDeptName.Text = e.Node.Text.Trim();
                DataSet ds = sqlclass.SqlDaAd("select * from tb_Dept where DeptName='" + this.txtDeptName.Text + "'", "tb_Dept");
                DataRowView rowview = ds.Tables["tb_Dept"].DefaultView[0];
                this.txtDeptDirector.Text = rowview["DeptDirector"].ToString();
                this.txtDeptTel.Text = rowview["DeptTel"].ToString();
                this.txtDeptID.Text = rowview["DeptID"].ToString();
                this.txtParentIndex.Text = rowview["ParentIndex"].ToString();
                ds.Dispose();  
            }
      

  2.   

    http://topic.csdn.net/u/20070725/14/b1d345ab-5c25-4120-84cf-e60bc535297e.html
      

  3.   


    private   void   TreeView1_Check(object   sender,   Microsoft.Web.UI.WebControls.TreeViewClickEventArgs   e)   
      {   
      Microsoft.Web.UI.WebControls.TreeNode   node=TreeView1.GetNodeFromIndex(TreeView1.SelectedNodeIndex   );   
        
      Label1.Text=node.Text;   
        
      }   
      

  4.   

    //获取当前结点 
            private Microsoft.Web.UI.WebControls.TreeNode GetSelectedNode(TreeView tv) 
            { 
                string strIndex = tv.SelectedNodeIndex; 
                 
                string[] strArray = strIndex.Split(new char[]{'.'}); 
                 
                int iCount = strArray.Length; 
                 
                TreeNode tn = tv.Nodes[Convert.ToInt32(strArray[0])]; 
                 
                //注意当选中接点刚好是根时(即SelectedNodeIndex=“0”)时, 
                //循环条件将不满足,不执行循环 
                for (int i=1;i<=iCount-1;i++) 
                { 
                    tn = GetNextNode(tn,strArray[i]); 
                }             return tn; 
            } private Microsoft.Web.UI.WebControls.TreeNode GetNextNode(TreeNode tn,string index) 
            { 
                int iIndex = Convert.ToInt32(index); 
                return tn.Nodes[iIndex]; 
            }