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

VS2010中如何点击treeview的节点而不刷新treeview?
尽量不使用iframe
代码如下
HTML code

<asp:ScriptManager ID="sm1" runat="server">
        </asp:ScriptManager>
            <asp:UpdatePanel  runat="server" ChildrenAsTriggers="false" UpdateMode="Conditional" >
             <ContentTemplate>             
      <asp:Button ID="BtnData" runat="server" Text="数据查看" Width="98%" Height="10%" 
             CausesValidation="False"  
            onclientclick="hidediv('BtnData'); return false" />
      <div id="divData" style="width:98%;height:89.5%">
      <asp:TreeView ID="tvData" runat="server" ImageSet="WindowsHelp" 
              onselectednodechanged="tvData_SelectedNodeChanged" >
          <HoverNodeStyle Font-Underline="True" ForeColor="#6666AA" />
          <Nodes>
              <asp:TreeNode Text="资料查询" Value="A01" Checked="false">
                  <asp:TreeNode Text="资料查询" Value="A0101"></asp:TreeNode>
                  <asp:TreeNode Text="记录查询" Value="A0102"></asp:TreeNode>
              </asp:TreeNode>
          </Nodes>
          <NodeStyle Font-Names="Tahoma" Font-Size="9pt" ForeColor="Black" 
              HorizontalPadding="5px" NodeSpacing="0px" VerticalPadding="1px" />
          <ParentNodeStyle Font-Bold="False" />
          <SelectedNodeStyle BackColor="#B5B5B5" Font-Underline="False" 
              HorizontalPadding="0px" VerticalPadding="0px" />
          </asp:TreeView>
      </div>
             </ContentTemplate>



------解决方案--------------------
不刷新页面,是不会执行onselectednodechanged事件的。

你的这个onselectednodechanged就没用了

问题是你要实现什么功能?

很多js实现的tree就很好
------解决方案--------------------
你想做什么?
------解决方案--------------------
node.Text="<font onclick='window.open('链接地址+参数','右边框架名称')'>链接到右边</font>"
node.SelectAction = TreeNodeSelectAction.None;


这个是实现JS链接到框架的,你也可以把window.open改成你要的JS方法
------解决方案--------------------
用javascript控制tree 就不会刷新了