Asp.net实现网站提示信息页面后的定时自动跳转到指定页面

实现前台页面中提示中读秒操作需要用JavaScript在操作:

<script type="text/javascript">
    var second = 5;
    var timer;
    function change() {
        second--;
        if (second > -1) {
            document.getElementById("second").innerHTML = second;
            timer = setTimeout('change()', 1000);
        }
        else {
            clearTimeout(timer);
        }
    }
    timer = setTimeout('change()', 1000);
</script>

对于的页面代码:

<div id="message_body">
    <br />
    <br />
    <asp:Label ID="Label1" runat="server" Text="[显示消息信息]"></asp:Label>,将在&nbsp;<strong><span id=second>5</span></strong>&nbsp;秒后自动跳转到指定页面。
<br /> <asp:Button ID="Button1" runat="server" Text="点击按钮手动跳转" Width="228px" onclick="Button1_Click" /> </div>

在页面需要提示的地方加上这句话:

 //提示信息后继续操作
 Session["GotoURL"] = "~/Admin/Movie_Edit.aspx"; //提示后跳转到的页面
 Session["Info"] = "添加电影数据成功";//提示的信息内容
 Response.Redirect("~/User/Message.aspx");//转到信息提示页面

 

后台代码获取该页面前用户操作的页面信息,可以在这个提示页面显示后自动跳转到之前或指定的页面.

using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Threading;//
using System.Timers;//

namespace Movies.UserControl.User
{
    public partial class Control_User_Message : System.Web.UI.UserControl
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            //显示信息
            string info = Session["Info"].ToString();
            Label1.Text = info;

            //自动跳转到页面
            string goUrl = Session["GotoURL"].ToString();
            HtmlMetaView(this.Page, goUrl.Substring(1));        
        }
 
        /// <summary>
        /// 跳转到指定页面
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button1_Click(object sender, EventArgs e)
        {
            string goUrl = Session["GotoURL"].ToString();
            Response.Redirect(goUrl);
        }

        /// <summary>
        /// 定时跳转(方法)
        /// </summary>
        /// <param name="page">当前页面</param>
        /// <param name="_url">跳转到的页面</param>
        public static void HtmlMetaView(System.Web.UI.Page page, string _url)
        {
            System.Web.UI.HtmlControls.HtmlMeta reflash = new System.Web.UI.HtmlControls.HtmlMeta();
            reflash.HttpEquiv = "Refresh";
            reflash.Content = "5;url=" + _url;
            page.Header.Controls.Add(reflash);
        }
    }
posted @ 2012-11-26 14:27  Yao,Mane  阅读(724)  评论(0编辑  收藏  举报