利用C#重载把平时经常用的弹出框封装成类,方便使用,给自己备份也给有需要的人看看!
ClientScript.RegisterStartupScript在AJAX页面中无效,可以换成ScriptManager.RegisterStartupScript试试.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
namespace Common
{
public class MessageBox
{
/// <summary>
/// 普通弹出信息
/// </summary>
/// <param name="p">Page</param>
/// <param name="msg">弹出的信息</param>
/// <param name="strKey">自定义个key</param>
public static void Show(Page p, string msg, string strKey)
{
p.ClientScript.RegisterStartupScript(p.GetType(), strKey, "alert(\"" + msg + "\");", true);
}
/// <summary>
/// 弹出信息后在本页打开新页面
/// </summary>
/// <param name="p"></param>
/// <param name="msg">弹出的信息</param>
/// <param name="url">新打开的网址</param>
public static void Show(Page p, string msg, string url, string strKey)
{
p.ClientScript.RegisterStartupScript(p.GetType(), strKey, "alert(\"" + msg + "\");location.href=\"" + url + "\";", true);
}
/// <summary>
/// 弹出信息,后在指定位置打开新页面
/// </summary>
/// <param name="p"></param>
/// <param name="msg">弹出的信息</param>
/// <param name="tag">前缀</param>
/// <param name="url">新打开的网址</param>
public static void Show(Page p, string msg, string tag, string url ,string strKey)
{
p.ClientScript.RegisterStartupScript(p.GetType(), strKey, "alert(\"" + msg + "\");" + tag + ".location.href=\"" + url + "\";", true);
}
/// <summary>
/// location跳转到指定页面
/// </summary>
/// <param name="p"></param>
/// <param name="url"></param>
public static void RefreshPage(Page p, string url,string strKey)
{
p.ClientScript.RegisterStartupScript(p.GetType(), strKey, "location.href=\"" + url + "\";", true);
}
/// <summary>
///指定位置 location跳转到指定页面
/// </summary>
/// <param name="p"></param>
/// <param name="tag">页面前缀</param>
/// <param name="url">要刷新页面地址</param>
public static void RefreshPage(Page p, string tag, string url,string strKey)
{
p.ClientScript.RegisterStartupScript(p.GetType(),strKey, tag + ".location.href=\"" + url + "\";", true);
}
/// <summary>
/// 刷新本页面
/// </summary>
/// <param name="p"></param>
/// <param name="tag"></param>
public static void ReloadPage(Page p, string tag,string strKey)
{
p.ClientScript.RegisterStartupScript(p.GetType(), strKey, tag + ".location.reload();", true);
}
}
}
可以在需要的页面上直接引用,如
MessageBox.Show(Page, "信息", ""); //需加上using 命名空间;