有关ASP.Net TreeView的简单问题 一个TreeView,希望在点击子节点的时候做一些操作,比如Session["a"]=null,之类的操作,我将这些操作写在了SelectedNodeChanged事件里,但是这个事件只在点击根节点的时候会被激发,而点击其下子节点时不会被激发,要怎么做才会在点击子节点时激发该事件或有什么事件可以实现此功能,谢谢各位了!告诉我修改AutoPostBack属性的兄弟就不用发言了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 我想你是想用AJAX的功能,这里有两篇文章,不知道是不是你想要的:http://blog.csdn.net/Delete123/archive/2009/01/12/3761503.aspxhttp://topic.csdn.net/t/20040630/14/3134516.html if (TreeView1.SelectedNode.ChildNodes.Count > 0) { //是根节点,不执行 } else { //是子节点,才执行 } protected void TreeView1_SelectedNodeChanged(object sender, EventArgs e) { if (this.TreeView1.SelectedNode != null && this.TreeView1.SelectedNode.Parent == null) { //根节点 } else { } } 感谢楼上三位的回答,一楼的,我不是想用Ajax,只是想清空一下我的Session,二楼三楼的,我并不是想把根节点和子节点的操作分开操作,只要点击节点,不论根叶都执行一个操作,而且我打了断点,当点击子节点的时候根本就执行不到SelectedNodeChanged事件,我的问题可能没表述清楚,我就是想要在点击子节点的时候触发某个事件,然后在事件里做些相应的操作,谢谢大家了! 可怜啊…………who can tell me 啊!!!! 只有根节点触发SelectedNodeChanged事件??这种情况还没遇到过,检查代码吧确保TreeView1.SelectedNode.Value的值各不相同 前台调用__doPost()那个玩意,然后再在SelectedNodeChanged改下貌似说,treeView那个aotupostback不是很灵 前台代码:<asp:TreeView ID="trvCheckPage" runat="server" BackColor="#EDF7F8" BorderColor="#EDF7F8" ExpandDepth="0" Font-Bold="False" Font-Size="Larger" ShowLines="True" Visible="False" OnSelectedNodeChanged="trvCheckPage_SelectedNodeChanged"> <Nodes> <asp:TreeNode SelectAction="SelectExpand" Text="基础信息" Value="基础信息"> <asp:TreeNode NavigateUrl="~/UI/BaseInfo/Info.aspx" Target="MainContent" Text="法人个人信息" Value="个人信息" SelectAction="SelectExpand"></asp:TreeNode> <asp:TreeNode NavigateUrl="~/UI/CorpBaseInfo/CorpInfo.aspx" Target="MainContent" Text="法人单位信息" Value="单位信息" SelectAction="SelectExpand"></asp:TreeNode> </asp:TreeNode> </Nodes></asp:TreeView>后台代码:protected void trvCheckPage_SelectedNodeChanged(object sender, EventArgs e){ Session["corpID"] = null; Session["id"] = null;} 随便拉了treeview 进页面,手动加了些节点上去,注册OnSelectedNodeChanged,运行,运行,点击节点就触发事件,不存在楼主说的情况。 搞明白了,是因为楼主的子节点带链接的缘故。其实 treeview 用postback很难看,如果楼主要坚持这么做,建议就把节点 的NavigateUrl去掉,改成绑定数据时候添加javascript函数实现。 就是呀,加节点时使value各不相同,这样才正常 点击Button1上传图片 怎么使页面上的input值不变 Master Page 中使用ModalPopup的问题 问题 sys.invalidoperationexception 关于分页时,显示页码的问题,谢谢指教! 跪求如何通过asp设置excel单元格格式、、、、、、、 求网页中打开服务器上的word和excel文档并保存的方案 请教高手一下。 这个错误搞了半天了呀.还没搞定:"弹出错误:无法在web服务器上启动调试。您没有调试该服务器的权限。" datagird传递问题? 子页中如何引用母版页中的公有属性 求助:关于图片新闻浏览特效问题
这里有两篇文章,不知道是不是你想要的:
http://blog.csdn.net/Delete123/archive/2009/01/12/3761503.aspx
http://topic.csdn.net/t/20040630/14/3134516.html
{
//是根节点,不执行
}
else
{
//是子节点,才执行
}
{
if (this.TreeView1.SelectedNode != null && this.TreeView1.SelectedNode.Parent == null)
{
//根节点
}
else
{ }
}
确保TreeView1.SelectedNode.Value的值各不相同
貌似说,treeView那个aotupostback不是很灵
<asp:TreeView ID="trvCheckPage" runat="server" BackColor="#EDF7F8" BorderColor="#EDF7F8" ExpandDepth="0" Font-Bold="False"
Font-Size="Larger" ShowLines="True" Visible="False" OnSelectedNodeChanged="trvCheckPage_SelectedNodeChanged">
<Nodes>
<asp:TreeNode SelectAction="SelectExpand" Text="基础信息" Value="基础信息">
<asp:TreeNode NavigateUrl="~/UI/BaseInfo/Info.aspx" Target="MainContent"
Text="法人个人信息" Value="个人信息" SelectAction="SelectExpand"></asp:TreeNode>
<asp:TreeNode NavigateUrl="~/UI/CorpBaseInfo/CorpInfo.aspx" Target="MainContent"
Text="法人单位信息" Value="单位信息" SelectAction="SelectExpand"></asp:TreeNode>
</asp:TreeNode>
</Nodes>
</asp:TreeView>
后台代码:
protected void trvCheckPage_SelectedNodeChanged(object sender, EventArgs e)
{
Session["corpID"] = null;
Session["id"] = null;
}
其实 treeview 用postback很难看,如果楼主要坚持这么做,
建议就把节点 的NavigateUrl去掉,改成绑定数据时候添加javascript函数实现。