为什么设置了TreeView的NavigateUrl后,点击文字节点页面不刷新

霸气小群哥 2010-05-07 04:47:55
项目是用frameset布局的上左中右框架,左边框架是treeview菜单页,中间框架是内容替换页,右边框架是帮助文档页,我现在想做的是当我点击treeview上的节点时,内容页与帮助页同时进行更换。

现在的问题是当我设置了TreeView的NavigateUrl后,点击treeview的文字节点,左框架的页面不刷新并且不会触发SelectedNodeChanged事件,中间框架内容页则根据NavigateUrl属性设置的SRC进行更换,但不能执行我更换右边框架SRC的js代码,当我去掉NavigateUrl属性后,点击树节点就可以触发SelectedNodeChanged事件,并且可以执行更换右框架SRC的js代码。

请教大虾们有没有好的解决方案! 急.......
...全文
321 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
a656432 2011-11-14
  • 打赏
  • 举报
回复
你这样肯定 不行,因为你点击时页面会刷新会把js代码冲掉
d8662110 2011-03-18
  • 打赏
  • 举报
回复
请问楼主注册的js方法方便说一下嘛!感激不尽
霸气小群哥 2010-05-10
  • 打赏
  • 举报
回复
我已经搞定了,不能同时设置TreeView的NavigateUrl属性和SelectChanged事件,我通过注册js的方法,同时改变中间框架和右边框的SRC。
在此谢谢各位的回答...
辰爸 2010-05-07
  • 打赏
  • 举报
回复
[Quote=引用 16 楼 winneraqun 的回复:]

SelectAction 属性没有设置,不过刚刚做了测试,SelectAction的四个值都没用....
[/Quote]

设置后会触发selectChanged事件,不过你要屏蔽掉NavigateUrl
霸气小群哥 2010-05-07
  • 打赏
  • 举报
回复
SelectAction 属性没有设置,不过刚刚做了测试,SelectAction的四个值都没用....
辰爸 2010-05-07
  • 打赏
  • 举报
回复
不过为什么楼主设置了导航还要触发SelectedChanged呢?这样好像无法实现!~
辰爸 2010-05-07
  • 打赏
  • 举报
回复
[Quote=引用 13 楼 winneraqun 的回复:]

js是执行改变右边框架SRC的代码,NavigateUrl和Target属性都是treenode的属性吧,跟这两个属性好像没什么关系吧,NavigateUrl是设置跳转路径,Target是指定跳转目标(哪个框架),不知是不是这样!
[/Quote]
是这样的
霸气小群哥 2010-05-07
  • 打赏
  • 举报
回复
js是执行改变右边框架SRC的代码,NavigateUrl和Target属性都是treenode的属性吧,跟这两个属性好像没什么关系吧,NavigateUrl是设置跳转路径,Target是指定跳转目标(哪个框架),不知是不是这样!
辰爸 2010-05-07
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 winneraqun 的回复:]

都要导航,需要设置SelectAction属性吗?
[/Quote]
你不是要触发SelectChanged事件吗?
mngzilin 2010-05-07
  • 打赏
  • 举报
回复
target的基本用法,你应该恶补下。
中框架的name和id总该有吧。设置了target="...",在设置NavigateUrl属性后,不照样能将中部框架的内容页改变吗。
mngzilin 2010-05-07
  • 打赏
  • 举报
回复
你这个问题呀,无奈啊:

设置了TreeView的NavigateUrl属性后,还可以设置treenode的Target="中框架的name"

为什么非要调用哪个麻烦的js呢。
霸气小群哥 2010-05-07
  • 打赏
  • 举报
回复
都要导航,需要设置SelectAction属性吗?
辰爸 2010-05-07
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 winneraqun 的回复:]

我是直接在控件上设置的<asp:TreeNode ImageUrl="~/WebUI/Common/images/addre.gif" Target="mainFrame" Text="company" NavigateUrl="~/WebUI/Request/Establish/FGSSL_FilialeRegister.aspx" Value="../../WebUI/help/qydj……
[/Quote]
可以另外一个页面修改,楼主的 tn.SelectAction = TreeNodeSelectAction.None; 怎么设置的?
霸气小群哥 2010-05-07
  • 打赏
  • 举报
回复
目前是demo阶段所以没用动态的,动态和静态的有什么不同么?
辰爸 2010-05-07
  • 打赏
  • 举报
回复
楼主为什么不动态生成树呢?我的没有问题啊!
霸气小群哥 2010-05-07
  • 打赏
  • 举报
回复
页面代码如下:
            <asp:TreeView ID="trvInfo" runat="server" Height="100%" ShowLines="True" Width="100%" OnSelectedNodeChanged="trvInfo_SelectedNodeChanged">
<Nodes>
<asp:TreeNode ImageUrl="~/WebUI/Common/images/addre.gif" Target="mainFrame" Text="外商投资的公司分公司登记事项"
ToolTip="外商投资的公司分公司登记事项" NavigateUrl="~/WebUI/Request/Establish/FGSSL_FilialeRegister.aspx" Value="../../WebUI/help/qydj-zj.html">
</asp:TreeNode>
</Nodes>
</asp:TreeView>



.cs代码


protected void trvInfo_SelectedNodeChanged(object sender, EventArgs e)
{
helpPath = this.trvInfo.SelectedNode.Value;
Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "clientScript", "changeHelpHtml('" + helpPath + "',0);", true);
}


js代码


function changeHelpHtml(helpUrl,flag)
{
if(!flag)
{
top.rightFrame.location = helpUrl;

}
}


求高人指点................
霸气小群哥 2010-05-07
  • 打赏
  • 举报
回复
我是直接在控件上设置的<asp:TreeNode ImageUrl="~/WebUI/Common/images/addre.gif" Target="mainFrame" Text="company" NavigateUrl="~/WebUI/Request/Establish/FGSSL_FilialeRegister.aspx" Value="../../WebUI/help/qydj-zj.html">
</asp:TreeNode>

楼上的你没问题吗?
天下在我心 2010-05-07
  • 打赏
  • 举报
回复
楼主最好把相关代码贴出来
辰爸 2010-05-07
  • 打赏
  • 举报
回复
我用的跟楼主差不多,不过是左右框架的!~
辰爸 2010-05-07
  • 打赏
  • 举报
回复
搂着怎么设置的NavigateUrl?
这样设置

childtn.Target = "WFRight";
childtn.NavigateUrl = "AuditFlowRight.aspx?wf_code="+childtn.Value;
没有问题啊?

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧