asp.net使用Javascript弹出对话框
来源:互联网 发布:淘宝上的实体娃娃 编辑:程序博客网 时间:2024/05/20 16:00
在asp.net中经常会使用javascript弹出一些提示框,前段时间做了一个网站,因为要用到弹出提示框的情况比较多,就自己动手写了这样的一个类。主要包括如下静态方法:Show(),NoticeAndReturn(),NoticeAndReturn(),ConfirmAndReturn()
public class MessageBox
{
private const string SCRIPT = "/n<script language=/"javascript/">/nwindow.alert('{0}');/n</script>";
//////////////////////////////////////////////////////////////////////////
/// <summary>
/// 弹出提示对话框
/// </summary>
/// <param name="currentPage"></param>
/// <param name="message"></param>
public static void Show(System.Web.UI.Page currentPage, string message)
{
currentPage.ClientScript.RegisterStartupScript(currentPage.GetType(), Guid.NewGuid().ToString(), string.Format(SCRIPT, message));
}
private const string _scriptNoticeAndReturn = "alert('{0}');location.href = '{1}'";
//private const string _scriptConfirmAndReturn = "if (confirm('{0}')) window.open('{1}', '_self', true);";
private const string _scriptConfirmAndReturn = "if (confirm('{0}')) location.href = '{1}';";
private const string _scriptNoticeAndReturnRefer = "alert('{0}');window.open(document.referer, '_self');";
//////////////////////////////////////////////////////////////////////////
/// <summary>
/// 提示并返回到指定的页面
/// </summary>
/// <param name="message"></param>
/// <param name="url"></param>
public static void NoticeAndReturn(System.Web.UI.Page currentPage, string message, string url)
{
currentPage.ClientScript.RegisterStartupScript(currentPage.GetType(), "Message", string.Format(_scriptNoticeAndReturn, message, url), true);
}
//////////////////////////////////////////////////////////////////////////
/// <summary>
/// 提示并返回到上一页
/// </summary>
/// <param name="currentPage"></param>
/// <param name="message"></param>
public static void NoticeAndReturn(System.Web.UI.Page currentPage, string message)
{
currentPage.ClientScript.RegisterStartupScript(currentPage.GetType(), "Message1", string.Format(_scriptNoticeAndReturnRefer, message), true);
}
//////////////////////////////////////////////////////////////////////////
/// <summary>
/// 提示是否返回指定的页面
/// </summary>
/// <param name="currentPage"></param>
/// <param name="message"></param>
/// <param name="url"></param>
public static void ConfirmAndReturn(System.Web.UI.Page currentPage, string message, string url)
{
currentPage.ClientScript.RegisterStartupScript(currentPage.GetType(), "Message", string.Format(_scriptConfirmAndReturn, message, url), true);
}
}
具体的使用如: MessageBox.ConfirmAndReturn(this, "修改已成功,单击确定返回到首页", "Default.aspx");
这样把他们包装起来后使用比较方便。但是也存在一个问题:在弹出了提示对话框后,用户返回或刷新,这时,对话框就是再次弹出来。、
这个问题困扰了我很久,抽时间一定将它解决
public class MessageBox
{
private const string SCRIPT = "/n<script language=/"javascript/">/nwindow.alert('{0}');/n</script>";
//////////////////////////////////////////////////////////////////////////
/// <summary>
/// 弹出提示对话框
/// </summary>
/// <param name="currentPage"></param>
/// <param name="message"></param>
public static void Show(System.Web.UI.Page currentPage, string message)
{
currentPage.ClientScript.RegisterStartupScript(currentPage.GetType(), Guid.NewGuid().ToString(), string.Format(SCRIPT, message));
}
private const string _scriptNoticeAndReturn = "alert('{0}');location.href = '{1}'";
//private const string _scriptConfirmAndReturn = "if (confirm('{0}')) window.open('{1}', '_self', true);";
private const string _scriptConfirmAndReturn = "if (confirm('{0}')) location.href = '{1}';";
private const string _scriptNoticeAndReturnRefer = "alert('{0}');window.open(document.referer, '_self');";
//////////////////////////////////////////////////////////////////////////
/// <summary>
/// 提示并返回到指定的页面
/// </summary>
/// <param name="message"></param>
/// <param name="url"></param>
public static void NoticeAndReturn(System.Web.UI.Page currentPage, string message, string url)
{
currentPage.ClientScript.RegisterStartupScript(currentPage.GetType(), "Message", string.Format(_scriptNoticeAndReturn, message, url), true);
}
//////////////////////////////////////////////////////////////////////////
/// <summary>
/// 提示并返回到上一页
/// </summary>
/// <param name="currentPage"></param>
/// <param name="message"></param>
public static void NoticeAndReturn(System.Web.UI.Page currentPage, string message)
{
currentPage.ClientScript.RegisterStartupScript(currentPage.GetType(), "Message1", string.Format(_scriptNoticeAndReturnRefer, message), true);
}
//////////////////////////////////////////////////////////////////////////
/// <summary>
/// 提示是否返回指定的页面
/// </summary>
/// <param name="currentPage"></param>
/// <param name="message"></param>
/// <param name="url"></param>
public static void ConfirmAndReturn(System.Web.UI.Page currentPage, string message, string url)
{
currentPage.ClientScript.RegisterStartupScript(currentPage.GetType(), "Message", string.Format(_scriptConfirmAndReturn, message, url), true);
}
}
具体的使用如: MessageBox.ConfirmAndReturn(this, "修改已成功,单击确定返回到首页", "Default.aspx");
这样把他们包装起来后使用比较方便。但是也存在一个问题:在弹出了提示对话框后,用户返回或刷新,这时,对话框就是再次弹出来。、
这个问题困扰了我很久,抽时间一定将它解决
- asp.net使用Javascript弹出对话框
- ASP.NET弹出对话框
- asp.net弹出对话框
- ASp.NET弹出一个对话框
- ASP.NET弹出一个对话框
- asp.net中的弹出对话框
- ASP.NET弹出一个对话框
- asp.net中的弹出对话框
- ASP.NET弹出对话框(总结)
- ASP.NET弹出一个对话框
- asp.net中的弹出对话框
- asp.net页面弹出对话框
- ASP.NET弹出对话框确认
- ASP.NET弹出一个对话框
- ASP.NET弹出一个对话框
- ASP.NET弹出一个对话框
- ASP.NET弹出一个对话框
- ASP.NET弹出对话框确认
- GridView 模板列嵌套主从表
- ONJava.com -- Web 服务实现中的概念分离 --> page 1
- ASP.NET 2.0 读取配置文件[INI](示例代码下载)
- 江南
- null
- asp.net使用Javascript弹出对话框
- 机顶盒系统建立说明文档
- ONJava.com -- Web 服务实现中的概念分离 --> page 2
- 关于winpcap 的郁闷问题
- Asp.net 2.0 C#实现压缩/解压功能 (示例代码下载)
- 串口一拖二收发数据测试总结
- c#探针
- DirectX图形处理(1)
- 程序中错误信息的处理办法