一个页面分为两个frame,设置左边frame的src为treeview.aspx,显示一个树状图,如何点击树状图的节点,在右边的frame里显示不同的页面?

解决方案 »

  1.   

    哦?
    请教chenghp:我要根据节点的内容在右边的框架显示不同的页面,譬如某个节点的text为"学校",点击之后在右边的frame显示xuexiao.aspx,应该有个触发的事件吧?该怎样处理?
      

  2.   

    在加载树时,判断一下
    if(tn.Text=="学校")
    {
     tn.Target = "leftFrame";
     tn.Navigate = "webform1.aspx";
    }
    else
    {
     tn.Target = "rightFrame";
     tn.Navigate = "webform2.aspx";
    }
    如果只是一个页面,可以在treeView.SelectedIndexChange事件中做判断。
    如果是框架页,直接在加载时,设置即可
      

  3.   

    请教楼上:
    主页面main.htm有两个框架:leftfrm和rightfrm,设置leftfrm的src为treeview.aspx,显示树状图,rightfrm显示点击节点出现的页面,我在treeview.aspx里设置某个节点譬如说是节点“学校”,设置其navigateurl=xuexiao.aspx target=rightfrm,为什么点击节点"学校"后,弹出一个新的页面显示xuexiao.aspx,而不是在rightfrm里显示xuexiao.aspx?
    谢谢!
      

  4.   

    就是跟csdn技术社区一样,点击左边的树状图能进入不同的版面
      

  5.   

    你是用的什么树呢!?JavaScript的?还是MS的IE TreeView控件?无论哪种都应该有类似于URL的属性,你在这个属性上写好链接地址,地址当然是要在指定的框架内打开了这样一点击,就会自动的打开不同的页面了。JavaScript的自然是在Html中写入地址,而IE TreeView控件可以在VS的树的属性中,也可以在CS文件中用代码指定。
      

  6.   

    呵呵,我今天刚做好,我给你贴一点代码吧
    也是一个框架,有左右两边,
    <frameset cols="200,*" frameborder="1" framespacing="8" bordercolor="#3366cc">
    <frame name="left" src="/MyLoopSpider_Rank3/tree.aspx">
    <frame name="right" src="/MyLoopSpider_Rank3/main.aspx">
    </frameset>
    左边的HTML里加上:
    <script language="javascript">
    function selectedNode(id)
    {


    var tmpNode = document.all.item(id).getTreeNode(document.all.item(id).clickedNodeIndex
    var nodetype=tmpNode.getAttribute("Type");
    document.all("nodeType").value=nodetype;
        parent.right.location.href="/MyLoopSpider_Rank3/main.aspx?Category="+nodetype+"&platform=TB";


    }
    </script>