【问题标题】:Entire Page is loading整个页面正在加载
【发布时间】:2013-01-29 09:43:18
【问题描述】:

我有三个菜单。 “个人信息”“移动信息”“文档”每个按钮都有自己的链接/页面,显示 GridView。现在,当我单击另一个菜单时,浏览器会加载我的整个页面,这会导致加载另一个页面的时间很长。我想改变那件事。

现在,我想做的是。我只想加载gridview所在的区域。示例:如果我单击 Personal Info 按钮,PersonalInfo_Gridview 将出现在该区域,然后当我单击 Mobile Info 按钮时,PersonalInfo_Gridview 将替换为 MobileInfo_Gridview 而无需加载整个页面。

这是我的 3 个菜单的屏幕截图:

我该怎么做?我正在使用 Microsoft Expression Web,请帮助 ASP.NET。

【问题讨论】:

  • @BlackHatShadow 我没试过。
  • @Milind 我已经下载了 AjaxToolkit。我不知道如何配置它。因为他们没有使用 Expression Web 的示例。
  • 试试这个,只使用一个GridView 并将其放入UpdatePanel。将GridView 包含到您的asyncpostback 触发器中。之后,每次点击链接,您都可以更改绑定到您的GridView 的数据。
  • 我正在这里做一个项目,这就是为什么我清楚地了解你想要做什么。我建议您为您的系统创建自定义GridView
  • 哎呀,对不起@PetersonPilares,我得早点回家。目前我在办公室。你能行的。只需按照 nunespascal 提供的链接。这一切都在那里。祝你好运。

标签: asp.net gridview pageload expression-web


【解决方案1】:

您应该使用UpdatePanel 来更新您的数据。

使用 UpdatePanel 控件,您可以启用网页以 无需编写任何客户端脚本即可参与部分页面更新。 如果需要,可以添加自定义客户端脚本来增强客户端 用户体验。当您使用 UpdatePanel 控件时,页面 行为独立于浏览器,可能会减少数量 在客户端和服务器之间传输的数据。

看看如何设置不同的触发器来使用菜单按钮来触发 udpate。

参考:Understanding ASP.NET UpdatePanel Triggers

【讨论】:

    【解决方案2】:

    就像这样:

    <asp:UpdatePanel ID="updPnlTabs" runat="server" >
             <Triggers>
                <asp:PostBackTrigger ControlID="btnPersonalInfo" />
                <asp:PostBackTrigger ControlID="btnMobileInfo" />
                <asp:PostBackTrigger ControlID="btnDocuments" />
             </Triggers>
             <asp:GridView runat="server" ID="ucLAD"/>
             <asp:Button Text="Personal Info" ID="btnPersonalInfo"  runat="server" Onclick="btnPersonalInfo_Click" />
             <asp:Button Text="Mobile Info" ID="btnMobileInfo"  runat="server" Onclick="btnMobileInfo_Click" />
             <asp:Button Text="Documents" ID="btnDocuments"  runat="server" Onclick="btnDocuments_Click" />
    </asp:UpdatePanel>  
    

    现在,要更新您的 GridView,请将您的脚本放在 OnClick 操作或方法上,如下所示:

        protected void btnPersonalInfo_Click(object sender, EventArgs e)
        {
             // your action here to update your GridView
        }
        protected void btnMobileInfo_Click(object sender, EventArgs e)
        {
             // your action here to update your GridView
        }
        protected void btnDocuments_Click(object sender, EventArgs e)
        {
             // your action here to update your GridView
        }
    

    【讨论】:

    • 感谢您的回答 :) 它非常有用。我在这里只能接受 1 个答案。嗯 :) 我只是投票赞成你的答案。
    • 您好,我有一个新问题。希望你能帮助我。这是链接stackoverflow.com/questions/14594513/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-10
    • 2011-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多