日期:2014-05-17  浏览次数:20498 次

asp.Net TreeView的问题

asp.Net 的服务器控件TreeView,tv.ShowCheckBoxes = TreeNodeTypes.All;采用后台代码动态循环生成,
我要实现的是,选中父节点时,所有子节点都选中,子节点一个都没选中,父节点也不选中。
我采用后台代码实现的,但页面数据很多,一选中checkboxe,整个页面都会刷新,速度很慢,
后来用改用js来,但后台取不到值,
我该怎么实现选中checkbox,页面不刷新,点确定的时候能取到选中的TreeNode的Value;求指点
asp.Net?js?easy?ui asp.Net js easyui

------解决方案--------------------
1.可以用局部刷新  Ajax的 UpdatePanel:
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
     <ContentTemplate>.........


2.
 GetTreeCheck(TreeView_Menu.Nodes[0], userid);
public void GetTreeCheck(TreeNode tn,string userid)
    {
        foreach (TreeNode treenode in tn.ChildNodes)
        {
            if (treenode.Checked)
            {
                string va = treenode.Value;
                string vb = treenode.Text;

                DB.SqlExecuteNonQuery("update table set name='" + int.Parse(userid) + "' where Code=" + va);
            }
            else
            {
            }

            GetTreeCheck(treenode, userid);//调用自身函数循环遍历TreeView

        }
      
    }
参考