Asp.net 如何避免在站点中导航时刷新母版页?

Asp.net 如何避免在站点中导航时刷新母版页?,asp.net,master-pages,Asp.net,Master Pages,在我的网站上,我创建了一个母版页,并将我所有的页面附加到它上。 我的母版页结构包含页眉和页脚。左侧有一个treeview控件,我已将其附加到我的所有页面,右侧有一个contentplaceholder以显示各个页面的内容 我的问题是,当我点击树视图中的任何链接时,它会刷新整个母版页并打开相应的页面。我希望避免这种刷新。意味着它应该在右侧contentplaceholder上显示页面内容,而不刷新整个页面 我见过有人建议使用iFrame。要不是使用iFrame,我将不得不重新构建我的网站。除了if

在我的网站上,我创建了一个母版页,并将我所有的页面附加到它上。 我的母版页结构包含页眉和页脚。左侧有一个treeview控件,我已将其附加到我的所有页面,右侧有一个contentplaceholder以显示各个页面的内容

我的问题是,当我点击树视图中的任何链接时,它会刷新整个母版页并打开相应的页面。我希望避免这种刷新。意味着它应该在右侧contentplaceholder上显示页面内容,而不刷新整个页面


我见过有人建议使用iFrame。要不是使用iFrame,我将不得不重新构建我的网站。除了iframes,还有其他解决方案吗?只要对我所做的工作进行最小的更改即可?

您可以将希望更改的内容放入
asp:UpdatePanel
中,这样将是唯一需要重新绘制的内容(它在引擎盖下使用AJAX):


您可能想看看如何使用AJAX来阻止这种情况发生。您将需要阅读有关使用的详细信息。下面是一些关于这方面的好文章:

您还可以选择使用jQuery来处理AJAX调用。虽然在使用AJAX时我通常更喜欢使用jQuery,但我不确定在您的情况下是否会使用它。如果您想查看它提供的内容,请查看以下链接:


  • 母版页类派生自UserControl类,母版页类似于子控件。所以我们可以说母版页不是真正的页面,当页面加载时,我们可以注意到地址栏中的导航URL是内容页的,但不是母版页!因此,如果不刷新母版页,我们无法刷新内容页

    有一种方法可以通过在母版页的部分添加代码来避免页面闪烁

    <meta http-equiv="Page-Enter" content="blendTrans(Duration=0)"/>
    
    <meta http-equiv="Page-Exit" content="blendTrans(Duration=0)"/>
    
    
    
    Hi Abe感谢您的回复。我想通过点击treeview中的链接,在我的网站的一个页面到另一个页面之间移动,我想停止刷新那里的母版页。在检索页面中的数据时,我已经在使用ajax了。在从一个页面移动到另一个页面时,我可以使用ajax停止在母版页上刷新吗?嗨,jackson,谢谢你的回复。我想通过点击treeview中的链接,在我的网站的一个页面到另一个页面之间移动,我想停止刷新那里的母版页。在检索页面中的数据时,我已经在使用ajax了。在从一个页面移动到另一个页面时,我可以使用ajax停止在母版页上刷新吗?您找到这个问题的解决方案了吗??如果是,你能告诉我吗???