В лекции 1 мы создали страницу, которая показывала время на сервере. Если пользователь находится в другом часовом поясе, время на его часах будет другое. Можно ли ее переделать, чтобы время совпадало с часами клиента? Ответ на этот вопрос — положительный. В страницу можно встроить код на JavaScript, который будет работать при загрузке страницы. Текст у метки менять нельзя, поэтому используем TextBox. Так как он — только для чтения и ширина границы равна 0, отличить его от метки сложно:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="time.aspx.cs" Inherits="time" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <head id="Head1" runat="server"> <title>Время у клиента</title> </head> <body onload="javascript:document.forms[0]['ClientTime'].value=Date();"> <form id="form1" runat="server"> <div> <asp:TextBox ID="ClientTime" runat="server" BorderWidth="0px" ReadOnly="True" Width="500px"></asp:TextBox><br /> <input type="button" id="Button1" runat="server" value="Узнать время" onclick="Show()" /> </div> </form> </body> </html>
Свойство класса Page ClientScript позволяет определять для страницы клиентские сценарии.