asp.net实现动态显示当前时间

asp.net实现动态显示时间的两个方法

方法一:不用javascrip,而是用了AJAX。(开销比较大,每秒向服务器请求一次时间)

Default.aspx页面:先拉一个ScriptManager控件到页面,然后拉一个UpdatePanel控件。UpdatePanel里面放一个Label用于显示时间,放一个timer控件用于控制时间的更新。注意Label与Label都要放到UpdatePanel控件里面。最后,timer控件的Interval属性设置为1000,让它每1秒执行一次即更新时间。
Default.aspx.cs页面:只需在
protected void Page_Load(object sender, EventArgs e)
里面输入
Label1.Text = DateTime.Now.ToString();
即可。

下面是两个页面的源码:

Default.aspx
<code>
<%@ Page Language=”C#” AutoEventWireup=”true” CodeBehind=”Default.aspx.cs” Inherits=”动态显示实时时间._Default” %>

<!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 runat=”server”>
<title>动态显示实时时间</title>
<style type=”text/css”>
.style1
{

height: 183px;
}
</style>
</head>
<body>
<form id=”form1″ runat=”server”>
<div> <asp:ScriptManager ID=”ScriptManager1″ runat=”server”>
</asp:ScriptManager>
</div>
<table style=” position: absolute;  margin-left:200px; margin-right:200px; margin-top:100px; width:270px; height:78px; top: 15px; left: 10px;”>
<tr>
<td>动态显示实时时间</td>
</tr>
<tr><td class=”style1″><asp:UpdatePanel ID=”UpdatePanel1″ runat=”server”  >
<ContentTemplate>
当前时间是:
<asp:Label ID=”Label1″ runat=”server” Text=”Label”></asp:Label>
<asp:Timer ID=”Timer1″ runat=”server” Interval=”1000″>
</asp:Timer>
</ContentTemplate>
</asp:UpdatePanel>
</td></tr>
</table>

</form>
</body>
</html>

</code>

Default.aspx.cs

using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;

namespace 动态显示实时时间
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Label1.Text = DateTime.Now.ToString();
}
}
}

方法二:用JavaScript实现(注意:1、这里不用document.write来显示时间是因为document.write只在页面加载时执行,所以只刷新一次时间之后就没再执行,也就无法更新时间了。2、div是用来放时间的,其ID是near,所以用 near.innerHTML 来向它里面写时间。3、注意要在body标签里面加入onload=”showtime()”让这个函数在页面加载时执行)

代码如下:

<code><body onload=”showtime()”>

<script   language=”javascript”>
showtime();
function   showtime()
{

var   hour=nowdate.getHours();
var   minutes=nowdate.getMinutes();
var   seconds=nowdate.getSeconds();

hour=(hour<10)   ?   “0”+hour:hour;
minutes=(minutes<10)   ?   “0”+minutes:minutes;
seconds=(seconds<10)   ?   “0”+seconds:seconds;

near. innerHTML = “现在时间:”+hour+”:”+minutes+”:”+seconds ;

setTimeout(“showtime()”,1000);

}

</script>
<div id=”near “></div>
</body></code>

打赏

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注