参考:http://www.codeproject.com/aspnet/ClientSideTreeView.asp

解决方案 »

  1.   

    event.srcElement就是指向触发事件的元素,他是什么就有什么的属性
    srcElement 是事件初始目标的html元素对象引用,因为事件通过元素容器层次冒泡,可以在任一层进行处理,所以由一个属性指向产生初始事件的元素是很有帮助的.有了元素的引用,就可以读/写改元素的属性,并调用他的任何方法.
      

  2.   

    ElementParameter() 
    发连接者无效这个是国外的一个网站,可能网速慢点,不过是个javascrit操作treeview的例子,lz可以参考下
      

  3.   

    event.srcElement就是指向触发事件的元素,他是什么就有什么的属性
    srcElement 是事件初始目标的html元素对象引用,因为事件通过元素容器层次冒泡,可以在任一层进行处理,所以由一个属性指向产生初始事件的元素是很有帮助的.有了元素的引用,就可以读/写改元素的属性,并调用他的任何方法.
    -----------------
    我还不会搞你就按我的要求写那个代码吧
      

  4.   

    说实话,
    .net2.0的treeview不是很好用.不容易在客户端操作.
    我现在用rad treeview很不错.http://www.telerik.com/Default.aspx
      

  5.   

    <%@ Page Language="C#" %>
    <script runat="server">
      protected void Page_Load(object sender, EventArgs e)
      {
        
        TreeView1.Attributes.Add("onclick", "OnClientTreeNodeChecked(event)");
      }
      protected void Button1_Click(object sender, EventArgs e)
      {
        if (Request.Form["CheckedNode"] != null)
        {
          string CheckedNodeValue = Request.Form["CheckedNode"];
          if (CheckedNodeValue == "")
            return;
          
          if (CheckedNodeValue.EndsWith(","))
            CheckedNodeValue = CheckedNodeValue.TrimEnd(',');
        
          Response.Write("您选择的节点有:"+CheckedNodeValue);
        }
      } 
    </script><html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
      <title>TreeView单选代码</title>
      <script type="text/javascript" language="javascript">
      //识别不同的浏览器
      function getTargetElement(evt) {
        var elem
        if (evt.target)
        {
          elem = (evt.target.nodeType == 3) ? evt.target.parentNode : evt.target
        } 
        else 
        {
          elem = evt.srcElement
        }
        return elem
      }
      var lastC = null;
      function OnClientTreeNodeChecked(evt)
      {
        evt = (evt) ? evt : ((window.event) ? window.event : "");
        if(evt == "")
        {
          return;
        }
        
        var obj = getTargetElement(evt);
        alert(obj.innerHTML)
        var hasTreeNode = false;
        if(obj.tagName)
        {
          if (obj.tagName == "INPUT" && obj.type == "checkbox")
          {
            if(lastC) lastC.checked=false
            lastC =obj ;
            obj.checked = true;
            
          }
        }
      }  
      function ShowCheckbox()
      { 
        var TreeView = "<%=TreeView1.ClientID %>"
        var checkNode = document.getElementById("CheckedNode")
        var checkboxs = document.getElementById(TreeView).getElementsByTagName("INPUT")
        for(i=0;i<checkboxs.length;i++)
        {
          if(checkboxs[i].type == "checkbox" 
            &&  checkboxs[i].name.substr(0,TreeView.length) == TreeView
            && checkboxs[i].checked )
          {
            s = checkboxs[i].nextSibling.href
            if(s.indexOf("\\") == -1)
            {        
              s = s.substr(0,s.lastIndexOf("'"))
              s  = s.substr(s.lastIndexOf("'")+2)
            }
            else
            {
             s = s.substr(s.lastIndexOf("\\") + 1,s.lastIndexOf("'") - s.lastIndexOf("\\") - 1)
            }
       
            checkNode.value += s + ","
          }
        }
        alert("得到的value值为:\r\n" + checkNode.value)
      }
      </script>
    </head>
    <body>
      <form id="form1" runat="server">
        <asp:TreeView ID="TreeView1" runat="server" ShowLines="true" ShowCheckBoxes="All">
          <Nodes>
            <asp:TreeNode Text="GHGGH" SelectAction="SelectExpand" Value="AA">
              <asp:TreeNode Text="ASP.NET技术" Value="11111111111111111111111">
                <asp:TreeNode Text="DDDD" Value="222222222"/>
                <asp:TreeNode Text="DDDDD"  Value="33333"/>
                <asp:TreeNode Text="FFFFFFFFFFFFFFF" Value="444">
                  <asp:TreeNode Text="Menu 服务器控件" />
                  <asp:TreeNode Text="SiteMapPath 服务器控件" />
                </asp:TreeNode>
              </asp:TreeNode>
              <asp:TreeNode Text="C#技术" />
            </asp:TreeNode>
            <asp:TreeNode Text="【孟子E章】站点二" />
            <asp:TreeNode Text="【孟子E章】站点三">
              <asp:TreeNode Text="Web开发技术" />
              <asp:TreeNode Text="Web脚本库" />
            </asp:TreeNode>
          </Nodes>
        </asp:TreeView>
        <input type="hidden" name="CheckedNode"  id="CheckedNode"/>
        <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" 
          OnClientClick="ShowCheckbox()" Text="提交" />
      </form>
    </body>
    </html>你可以根据内容进行判断
      

  6.   

    顶,还不知道javascript如何判断net2.0中我选择的TreeView节点是否为根节点 
    望高人帮个忙。