日期:2014-05-19  浏览次数:20404 次

如何让asp.net2.0的TreeView点击结点后不发生返回服务器.
我刚学用asp.net2.0   treeview.
我用了TreeView自动绑定到XmlDataSource   ,然后用XmlDataSource绑定一XML文件,:
<TreeNodes>
    <TreeNode   Text= "aaaa "   NavigateUrl= " "   Target= "contentFrame ">
                <TreeNode   Text= "aaaaaaa "   NavigateUrl= "content.aspx?treeid=1025 "   Target= "contentFrame "   />  
    </TreeNode>
    <TreeNode   Text= "bbbb "   NavigateUrl= " "   Target= "contentFrame ">
    <TreeNode   Text= "cccc "   NavigateUrl= "content.aspx?treeid=1022 "   Target= "contentFrame "   />  
    <TreeNode   Text= "dddd "   NavigateUrl= "content.aspx?treeid=1023 "   Target= "contentFrame "   />  
    <TreeNode   Text= "eeee "   NavigateUrl= "content.aspx?treeid=1024 "   Target= "contentFrame "   />  
    </TreeNode>

</TreeNodes>
我使用TreeView的Text,NavigateUrl,Target分别绑定XML的Text,NavigateUrl,Target值,生成一个导航树.

我生成这个treeview纯粹就是当个客户端控件使用,生成一个树,对网站地图进行导航,在另一Target指向的IFRAME显示.所以,在点击这树的任何结点,都不希望该TreeView返回到服务器,进行刷新.但有些母结点,是没有想对应的NavigateUrl的,即可以为 " ".

在生成TreeView后,我发现,有NavigateUrl结果的点,点击后,会按我想像的在IFRAME生成网站,但母结果,即没有NavigateUrl属性的结点,一点击后,就会发生返回服务器,进行整个页面的刷新.这是用户不想看到的.
请问有什么好办法,可以让所有的结点,点击后,不发生返回服务器的行为.就像CMH文件一样,结果如果没有URL值的话,就什么也不执行.
谢谢

------解决方案--------------------
有属性enablclientscript属性设置看看
------解决方案--------------------
最简单的方法 没有NavigateUrl的设置成 NavigateUrl= "# "
------解决方案--------------------
最简单的方法 没有NavigateUrl的设置成 NavigateUrl= "# "
--------------------
同意!
------解决方案--------------------
enablclientscript = "true "
------解决方案--------------------
根本就不要设NavigateUrl
也就是没有这个属性,
然后把SelectAction设为Expand

我试过的,这样只是展开子node不会回传