【问题标题】:how to avoid the Refresh in MasterPage in ContentPage如何避免在 ContentPage 中的 MasterPage 中刷新
【发布时间】:2010-02-13 08:26:35
【问题描述】:

我有一个带有计时器的母版页,它显示服务器时间并每秒刷新一次,在内容页面上我有一个带有 ajax 的聊天程序,每秒刷新一次以获取最后输入的消息。

我有一个 Html 文本框和一个隐藏的提交按钮,当用户编写文本并按 Enter 时,我检查这是否是 Enter 键然后提交消息,它在 IE 中运行良好,但在FireFox 和 Opera 两次显示相同的消息。

我认为问题出在计时器上,有什么办法可以避免这个特定内容页面中的 MasterPage 计时器?

提前致谢

【问题讨论】:

    标签: c# asp.net master-pages chat


    【解决方案1】:

    为了优化性能并减少往返次数,我建议您在页面启动时获取服务器上的时间。然后计算服务器和客户端时钟之间的差异。现在您可以使用 Javascript(仅限客户端,不再往返服务器)每秒更新屏幕上的时钟。

    如果问题是由您提到的主题引起的,这也应该可以解决您的问题。无论如何,我认为您不会每秒都请求服务器时间,这将为您自己和您的应用用户带来很大的好处。

    希望这会有所帮助,

    【讨论】:

      【解决方案2】:

      您可以在 MasterPage 上公开计时器,然后访问它:

      // On MasterPage
      public Timer MyTimer { get { return this._myTimer; } }
      
      // On Content Page
      <%@ MasterType VirtualPath="~/MyMaster.master" %>
      
      override OnLoad(EventArgs e) {
          base.OnLoad(e);
          this.Master.MyTimer.Enabled = false;
      }
      

      【讨论】:

        猜你喜欢
        • 2020-01-02
        • 2014-11-09
        • 1970-01-01
        • 2019-10-16
        • 1970-01-01
        • 1970-01-01
        • 2023-01-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多