zoukankan      html  css  js  c++  java
  • ASP.net在网页上显示当前时间,利用AJAX不刷新网页

    前台页面代码:

    <%@ Page Language="C#" AutoEventWireup="true" CodeFile="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>
    </head>
    <body>
        <form id="form1" runat="server">
        <asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>
        <div>
            <asp:UpdatePanel ID="UpdatePanel1" runat="server">
                <ContentTemplate>
                    <asp:Timer ID="Timer1" runat="server" Interval="1000" OnTick="Timer1_Tick">
                    </asp:Timer>
                    <asp:Label ID="lblTime" runat="server" Text=""></asp:Label>
                </ContentTemplate>
            </asp:UpdatePanel>
        </div>
        </form>
    </body>
    </html>

    后台CS代码:

    using System;
    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;
    using System.Globalization;
    public partial class _Default : System.Web.UI.Page 
    {
        protected void Page_Load(object sender, EventArgs e)
        {
    
        }
    
        /// <summary>
        /// 事件发生改变
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Timer1_Tick(object sender, EventArgs e)
        {
            //第一种方法获取星期几
            //string[] str1 = { "星期一", "星期二", "星期三", "星期四", "星期五", "星期六", "星期日" };
            //string str2 = DateTime.Now.ToString("tt") == "上午" ? "AM" : "PM";
            //lblTime.Text = "当前时间为:" + DateTime.Now.ToString("yyyy年MM月dd日") + "&nbsp;&nbsp;&nbsp;" +
            //    str1[Convert.ToInt32(DateTime.Now.DayOfWeek)] + "&nbsp;&nbsp;&nbsp;" + DateTime.Now.ToLongTimeString()+;
            //第二种方法获取星期几
            string str = DateTime.Now.ToString("tt") == "上午" ? "AM" : "PM";
            lblTime.Text = "当前时间为:" + DateTime.Now.ToString("yyyy年MM月dd日") + "&nbsp;&nbsp;&nbsp;" +
                 CultureInfo.GetCultureInfo("zh-cn").DateTimeFormat.GetDayName(DateTime.Now.DayOfWeek) + "&nbsp;&nbsp;&nbsp;" +
                 DateTime.Now.ToLongTimeString() + "&nbsp;&nbsp;&nbsp;" + str;
        }
    }

    相关知识:
        ·UpdatePanel内放置需要被刷新的控件,如果是其内部控件事件导致其刷新,则不用另外做什么设置,因为UpdatePanel默认ChildrenAsTriggers="true"。
        ·如果是UpdatePanel外部控件导致其刷新的话,则应设置 Triggers。
        ·在Triggers内,如果AsyncPostBackTrigger未设置EventName,则为其指定控件的默认事件。
        ·UpdatePanel默认UpdateMode="Always",需要的话应设置UpdateMode="Conditional"。
        ·RenderMode="Block"对应div;RenderMode="Inline"对应span

    举例:定时器控件Timer2在UpdatePannel外面,则设置如下,见黄色部分:

    <asp:scriptmanager ID="Scriptmanager1" runat="server"></asp:scriptmanager>
    <asp:updatepanel ID="Updatepanel1"  runat="server">
        <ContentTemplate>
            <asp:Timer ID="Timer1" Interval="1000" runat="server" ontick="Timer1_Tick" >
            </asp:Timer>
            <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
            <p></p>
            <asp:Label ID="Label2" runat="server" Text="Label"></asp:Label>
        </ContentTemplate>
        <Triggers>
        <asp:AsyncPostBackTrigger ControlID="Timer2" EventName="Tick"  />
        </Triggers>
    </asp:updatepanel>
        </div>
        <asp:Timer ID="Timer2" runat="server" Interval="3000" ontick="Timer2_Tick">
        </asp:Timer>

    推荐阅读:

     
    这是用JS实现的。
  • 相关阅读:
    微信小游戏5.2.2 在子项目中使用EUI制作排行榜报错 wx.getFileSystemManager not function
    Egret5.2.2 微信小游戏行的示例排行榜
    Python翻译
    Python-docx库的使用
    用百度文字识别实现图片文本识别
    基于airtest的朋友圈自动点赞
    使用豆瓣源安装python包
    Appium 环境配置遇到的坑
    使用Pyppeteer进行gmail模拟登录
    异步爬虫
  • 原文地址:https://www.cnblogs.com/hfzsjz/p/3230368.html
Copyright © 2011-2022 走看看