新微赢技术网

标题: 异步刷新后的脚本文件加载问题 [打印本页]

作者: 亾莣乁靈柩    时间: 2009-3-16 15:10
标题: 异步刷新后的脚本文件加载问题
我们现在编写一个示例来重现一个异步刷信的问题。
   
    首先,我们建立一个名为“ScriptHandler.ashx”的Generic Handler,它的作用是模拟一个脚本文件。可以看出,加载这么一个脚本文件是一个很耗时的操作。
   
  ScriptHandler.ashx
  <%@ WebHandler Language="C#" Class="ScriptHandler" %>
   
  using System;
  using System.Web;
   
  public class ScriptHandler : IHttpHandler
  {
   public void ProcessRequest (HttpContext context)
   {
   context.Response.ContentType = "text/javascript";

   System.Threading.Thread.Sleep(3000);
   context.Response.Write("Sys.Application.notifyScriptLoaded();");
   }
   
   // ...
  }
   
    然后我们创建一个简单的页面,放置一个UpdatePanel和两个按钮。 Page
  <asp:UpdatePanel ID="UpdatePanel1" runat="server">
   <ContentTemplate>
   <%= DateTime.Now %><br />
   <asp:Button ID="Button1" runat="server" Text="Load Script File"
   OnClick="Button1_Click" />
   <asp:Button ID="Button2" runat="server" Text="Partial Rendering"
   OnClick="Button2_Click" />
   </ContentTemplate>
  </asp:UpdatePanel>
   
   
    下面的代码是响应按钮Click事件的实现。当我们点击“Load Script File”按钮时,ScriptHandler.ashx会被作为脚本文件添加到页面上。而“Partial Rendering”则会发起一个需要等待很长时间的异步刷新。
   
  Event Handler
  protected void Button1_Click(object sender, EventArgs e)




欢迎光临 新微赢技术网 (http://bbs.weiying.cn/) Powered by Discuz! X3.2