首页 新闻 会员 周边

AJAX的疑问?

0
悬赏园豆:30 [已关闭问题] 关闭于 2008-11-13 10:54

刚接触微软的AJAX框架,有如下代码

<asp:UpdatePanel ID="UpdatePanel1" runat="server">
  <ContentTemplate>
        Page updated at: <%= System.DateTime.Now %>
  </ContentTemplate>

  <Triggers>
    <asp:AsyncPostBackTrigger ControlID="btnUpdate" />
  </Triggers>
</asp:UpdatePanel>

<asp:Button ID="btnUpdate" runat="server" Text="Update Page By AJAX" />

运行后时间的显示会有局部刷新功能,和我想要的一样。

然后我需要在每个页面的显示页面生成时间,于是就写了一个Module类,代码如下

public class PageProcessingTimeModule : System.Web.IHttpModule {

  private DateTime _start;

  public void Dispose( ) { }

  public void Init( System.Web.HttpApplication context ) {

    context.BeginRequest += new System.EventHandler( context_BeginRequest );

    context.EndRequest += new System.EventHandler( context_EndRequest );

  }

  private void context_BeginRequest( object sender, System.EventArgs e ) {

    _start = DateTime.Now;

  }

  private void context_EndRequest( object sender, System.EventArgs e ) {

    HttpContext.Current.Response.Write(

      string.Format( "Request Processing Time: {0}<br />", DateTime.Now -   _start )

    );

  }

}

然后在web.config中<httpModules>中add这个Module。

再运行发现,第一次加载时正常,当我按btnUpdate是就会在IE中报错。

我想问题出在了PageProcessingTimeModule没有进行判断,那么应该如何进行判断呢?

如果不是PageProcessingTimeModule出问题,那没问题出在哪里了,希望高人指点。

沈啣结的主页 沈啣结 | 初学一级 | 园豆:0
提问于:2008-11-03 10:00
< >
分享
所有回答(2)
0

当你点击页面上的按钮的时候,只是服务器进行回发,并不是重新请求这个页面,你的问题是不是出在这里呢?

上不了岸的鱼 | 园豆:4613 (老鸟四级) | 2008-11-03 12:49
0

去了解下ASP.NET AJAX客户端生命周期Sys.Application,PageRequestManager和事件的运行先后次序。

Astar | 园豆:40805 (高人七级) | 2008-11-03 20:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册