【问题标题】:Display current time in ASP.net and have it ticking在 ASP.net 中显示当前时间并让它滴答作响
【发布时间】:2012-07-24 19:48:24
【问题描述】:

我的申请要求显示日期和时间。 我在我的 .net 应用程序中使用 Ajax 来执行此操作。

目前我有这个代码

                    <asp:ScriptManager ID="ScriptManager1" runat="server" />
                    <asp:Timer ID="UpdateTimer" runat="server" Interval="1000" OnTick="UpdateTimer_Tick" />
                    <asp:UpdatePanel ID="TimedPanel" runat="server" UpdateMode="Conditional">
                        <Triggers>
                            <asp:AsyncPostBackTrigger ControlID="UpdateTimer" EventName="Tick" />
                        </Triggers>
                        <ContentTemplate>
                            <asp:Label runat="server" ID="DateStampLabel" />
                        </ContentTemplate>
                    </asp:UpdatePanel>

刷新页面时除了延迟一秒外,它工作得很好。我的问题是,这是实现这一目标的最佳方法吗?我也许可以不显示秒数而侥幸……这可能不太重要。如果我这样做,我应该怎么做?

这里是代码隐藏...

Protected Sub UpdateTimer_Tick(ByVal sender As Object, ByVal e As System.EventArgs)
    DateStampLabel.Text = DateTime.Now.ToString()
End Sub

谢谢!

【问题讨论】:

  • 你想显示服务器时间还是客户端时间? (如果是后者,仅使用 javascript 解决方案会是更好的选择)
  • 或者,在返回的 HTML 中显示服务器的时间,但使用 Javascript 将该时间与本地机器进行比较,然后根据本地时钟每秒更新一次,因此它将显示服务器的时间而不需要投票。
  • 好问题。这真的没关系,因为这将在公司的 Intranet 上使用。我不确定...我猜客户可能是最好的...
  • 对于任何将来引用此内容的人来说,Jupaol 是正确的,因为客户端解决方案在几乎所有方面都更有效。但是,要解决刷新页面时延迟一秒的问题,您可以在 Page_Load 事件或在页面之前执行的任何其他页面事件中设置 DateStampLabel.Text = DateTime.Now.ToString()发送给客户端。

标签: asp.net vb.net time timer


【解决方案1】:

我不建议您这样做,因为每次您想要刷新计时器(每秒)时,您实际上是在访问服务器以显示计时器。显然,这种方法的性能影响是负面的

而且您还使用了 evil UpdatePanel,这意味着您每次都在执行整个页面生命周期。

如果您依赖客户端浏览器,您可以完成相同的行为:

$('#digital-clock').clock({offset: '0', type: 'digital'});
<ul id="digital-clock" class="digital">
  <li class="hour"></li>
  <li class="min"></li>
  <li class="sec"></li>
  <li class="meridiem"></li>
</ul>

参考:

http://joaquinnunez.cl/jquery-clock-plugin/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-27
    • 1970-01-01
    • 2014-06-16
    • 1970-01-01
    相关资源
    最近更新 更多