首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >UpdatePanel中的ContentPlaceHolder

UpdatePanel中的ContentPlaceHolder
EN

Stack Overflow用户
提问于 2012-01-10 20:10:18
回答 1查看 8.3K关注 0票数 0

我有一个非常简单的支持ajax的asp .net网站与母版页。我在母版页中有一个菜单,其他页面显示在MainContent占位符中。我有下面的code.But,当我点击菜单项时,我可以看到有时页面回发。

代码语言:javascript
复制
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always"> 
   <ContentTemplate>
       <asp:ContentPlaceHolder ID="MainContent" runat="server" />
   </ContentTemplate>

如何防止回发和页面的部分加载?我已经搜索了stackoverflow,但所有的解决方案都与我所做的是一样的。有什么我需要做的吗?

谢谢。

编辑:包含菜单项的完整页面如下所示:

代码语言:javascript
复制
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<div class="page">
    <div class="header">
        <div class="title">
            <h1>
                App</h1>
        </div>
        <div class="loginDisplay">
        </div>
        <div class="clear hideSkiplink">
            &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
            <asp:Menu ID="NavigationMenu" runat="server" EnableViewState="false" IncludeStyleBlock="false"
                Orientation="Horizontal" Font-Size="Large" Height="48px" Width="100%" BorderStyle="Dashed">
                <Items>
                    <asp:MenuItem NavigateUrl="~/Default.aspx" Text="Home Page" />
                    <asp:MenuItem NavigateUrl="~/DefinePropertyType.aspx" Text="Define PropertyType" />
                    <asp:MenuItem NavigateUrl="~/CreateProperty.aspx" Text="Create Property" />
                    <asp:MenuItem NavigateUrl="~/RiskManagemet.aspx" Text="Risk Managemet" />
                    <asp:MenuItem NavigateUrl="~/InsurancePolicy.aspx" Text="InsurancePolicy" />
                    <asp:MenuItem NavigateUrl="~/Damage.aspx" Text="Damage" />
                </Items>
                <StaticMenuItemStyle ItemSpacing="20px" />
            </asp:Menu>
        </div>
    </div>
    <div class="main">
        <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Always"> 
            <ContentTemplate>
                <asp:ContentPlaceHolder ID="MainContent" runat="server" />
            </ContentTemplate>
        </asp:UpdatePanel>
    </div>
    <div class="clear">
    </div>
</div>
<div class="footer">
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-01-10 20:29:19

您需要将菜单控件定义为更新面板的异步回发触发器。尝尝这个

代码语言:javascript
复制
    <asp:updatepanel ID="Updatepanel1" runat="server">
        <Triggers>
            <asp:AsyncPostBackTrigger ControlID="NavigationMenu" 
                EventName="MenuItemClick" />
        </Triggers>
        <ContentTemplate>
             <asp:ContentPlaceHolder ID="MainContent" runat="server" />
        </ContentTemplate>
    </asp:updatepanel>
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8803061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档