2

アプリケーションには、日付と時刻を表示する必要があります。これを行うために、.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>

ページを更新するときの1秒の遅延を除けば、問題なく機能しています。私の質問はこれです、これはこれを達成するための最良の方法ですか?私はおそらく秒を表示しないことで逃げることができます...それはそれほど重要ではないかもしれません。私がそれをするなら、私はそれをどのようにすべきですか?

これがコードビハインドです...

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

ありがとう!

4

1 に答える 1

0

タイマーを更新するたびに(毎秒)、タイマーを表示するために実際にサーバーにアクセスしているため、これを行うことはお勧めしません。明らかに、このアプローチのパフォーマンスへの影響はマイナスです

また、 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/

于 2012-07-24T19:55:47.467 に答える