using System;

using System.Collections.Generic;

using System.Text;

using System.Web;

using System.Web.UI;

///在後台註冊JavaScript腳本彈出信息對話框及確認對話框(需要有MS AJAX環境)

namespace ScriptAlert

{

/// <summary>

///  在後台註冊JavaScript腳本彈出信息對話框及確認對話框(需要有MS AJAX環境)

/// </summary>

public class Script

{

/// <summary>

/// 在後台註冊JavaScript腳本彈出信息對話框及確認對話框(需要有MS AJAX環境)

/// </summary>

public Script() { }

/// <summary>

///  Javascript方式彈出消息對話框

/// </summary>

/// <param name="message">要彈出的消息內容</param>

/// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

public static void Alert(string message, Page page)

{

page.ClientScript.RegisterStartupScript(page.GetType(), null, "alert('" + message + "');", true);

}

/// <summary>

/// 向頁面註冊javascript腳本,這種方式是很靈活的,可以在頁面上註冊任何你想要的js腳本

/// </summary>

/// <param name="scriptContent">Javascript腳本的內容,記得不要在腳本兩端加script標誌,script標志程序會自動生成</param>

/// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

public static void RegisterScript(string scriptContent, Page page)

{

page.ClientScript.RegisterStartupScript(page.GetType(), null, scriptContent, true);

}

/// <summary>

/// javascript彈出消息後,跳轉到指定的URL鏈接頁面

/// </summary>

/// <param name="message">要彈出的消息內容</param>

/// <param name="pageUrl">要跳轉到的頁面鏈接,站內鏈接請填寫相對路徑,站外的鏈接需要加上"http://",如"http://www.baidu.com"</param>

/// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

public static void AlertAndGotoUrl(string message, string pageUrl, Page page)

{

string strScript = "alert('" + message + "');window.location.href='" + pageUrl + "';";

page.ClientScript.RegisterStartupScript(page.GetType(), null, strScript, true);

}

/// <summary>

/// 利用Ajax的方式彈出消息對話框,這種方式主要用於在用戶控件和UpdatePanel控件中使用,在頁面中也可以使用

/// </summary>

/// <param name="message">要彈出的消息內容</param>

/// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

public static void AjaxAlert(string message, Control controlId)

{

ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, "alert('" + message + "');", true);

}

/// <summary>

/// 利用Ajax的方式向控件(用戶控件和UpdatePanel)或頁面註冊Javascript腳本,這種方式主要用於在用戶控件和UpdatePanel控件中使用,在頁面中也可以使用

/// </summary>

/// <param name="scriptContent">Javascript腳本的內容,記得不要在腳本兩端加script標志,script標志程序會自動生成</param>

/// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

public static void AjaxRegisterScript(string scriptContent, Control controlId)

{

ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, scriptContent, true);

}

/// <summary>

///利用Ajax的方式彈出消息對話框後,跳轉到指定的URL鏈接頁面,這種方式主要用於在用戶控件和UpdatePanel控件中使用,在頁面中也可以使用

/// </summary>

/// <param name="message">要彈出的消息內容</param>

/// <param name="pageUrl">要跳轉到的頁面鏈接,站內鏈接請填寫相對路徑,站外的鏈接需要加上"http://",如"http://www.baidu.com"</param>

/// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

public static void AjaxAlertAndGotoUrl(string message, string pageUrl, Control controlId)

{

string strScript = "alert('" + message + "');window.location.href='" + pageUrl + "';";

ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, strScript, true);

}

/// <summary>

/// Javascript彈出確認對話框後,並跳轉到指定的URL鏈接頁面

/// </summary>

/// <param name="message">要彈出的消息內容</param>

/// <param name="okGotoUrl">選擇確認(OK)按鈕後要跳轉到的頁面URL,站內鏈接寫相對路徑,站外鏈接需加"http://"</param>

/// <param name="cancelGotoUrl">選擇取消(Cancel)按鈕後要跳轉到的頁面URL,如果參數為Null或空字符""則返回false(不跳轉),站內鏈接寫相對路徑,站外鏈接需加"http://"</param>

/// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

public static void ConfirmAndGotoUrl(string message, string okGotoUrl, string cancelGotoUrl, Page page)

{

string strScript = "";

if (String.IsNullOrEmpty(cancelGotoUrl))

{

strScript = "if(confirm('" + message + "')==true){window.location.href='" + okGotoUrl + "';} else {return false;}";

}

else

{

strScript = "if(confirm('" + message + "')==true){window.location.href='" + okGotoUrl + "';} else{window.location.href='" + cancelGotoUrl + "';}";

}

page.ClientScript.RegisterStartupScript(page.GetType(), null, strScript, true);

}

/// <summary>

/// Javascript彈出確認對話框後,並執行指定的Javascript腳本

/// </summary>

/// <param name="message">要彈出的消息內容</param>

/// <param name="okToScript">選擇確認(OK)按鈕後要執行的javacript腳本內容</param>

/// <param name="cancelToScript">選擇取消(Cancel)按鈕後要執行的javacript腳本內容,如果參數為Null或空字符""則返回false</param>

/// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

public static void ConfirmAndExecuteScript(string message, string okToScript, string cancelToScript, Page page)

{

string strScript = "";

if (String.IsNullOrEmpty(cancelToScript))

{

strScript = "if(confirm('" + message + "')==true){"+okToScript+"} else{return false;}";

}

else

{

strScript = "if(confirm('" + message + "')==true){" + okToScript + "} else{" + cancelToScript + "}";

}

page.ClientScript.RegisterStartupScript(page.GetType(), null, strScript, true);

}

/// <summary>

/// 利用Ajax方式彈出確認對話框後,並跳轉到指定的URL鏈接頁面,適合於控件(用戶控件和UpdatePanel控件中)和頁面中

/// </summary>

/// <param name="message">要彈出的消息內容</param>

/// <param name="okGotoUrl">選擇確認(OK)按鈕後要跳轉到的頁面URL,站內鏈接寫相對路徑,站外鏈接需加"http://"</param>

/// <param name="cancelGotoUrl">選擇取消(Cancel)按鈕後要跳轉到的頁面URL,如果參數為Null或空字符""則返回false(不跳轉),站內鏈接寫相對路徑,站外鏈接需加"http://"</param>

/// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

public static void AjaxConfirmAndGotoUrl(string message, string okGotoUrl, string cancelGotoUrl, Control controlId)

{

string strScript = "";

if (String.IsNullOrEmpty(cancelGotoUrl))

{

strScript = "if(confirm('" + message + "')==true){window.location.href='" + okGotoUrl + "';} else {return false;}";

}

else

{

strScript = "if(confirm('" + message + "')==true){window.location.href='" + okGotoUrl + "';} else{window.location.href='" + cancelGotoUrl + "';}";

}

ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, strScript, true);

}

/// <summary>

/// 利用Ajax方式彈出確認對話框後並執行指定的Javascript腳本

/// </summary>

/// <param name="message">要彈出的消息內容</param>

/// <param name="okToScript">選擇確認(OK)按鈕後要執行的javacript腳本內容</param>

/// <param name="cancelToScript">選擇取消(Cancel)按鈕後要執行的javacript腳本內容,如果參數為Null或空字符""則返回false</param>

/// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

public static void AjaxConfirmAndExecuteScript(string message, string okToScript, string cancelToScript, Control controlId)

{

string strScript = "";

if (String.IsNullOrEmpty(cancelToScript))

{

strScript = "if(confirm('" + message + "')==true){" + okToScript + "} else{return false;}";

}

else

{

strScript = "if(confirm('" + message + "')==true){" + okToScript + "} else{" + cancelToScript + "}";

}

ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, strScript, true);

}

}

}

后台弹出JS类的更多相关文章

  1. 每日学习心得:CustomValidator验证控件验证用户输入的字符长度、Linq 多字段分组统计、ASP.NET后台弹出confirm对话框,然后点击确定,执行一段代码

    2013-9-15 1.    CustomValidator验证控件验证用户输入的字符长度 在实际的开发中通常会遇到验证用户输入的字符长度的问题,通常的情况下,可以写一个js的脚本或者函数,在ASP ...

  2. asp.net 后台弹出提示框

    1.后台弹出提示信息方法 Response.Write("<scripttype="text/javascript">alert('你所查询的数据不存在!') ...

  3. 【转载】asp.net 后台弹出提示框

    感觉这种最好用: public void showMessage(string str_Message) { ClientScript.RegisterStartupScript(this.GetTy ...

  4. Asp.Net后台弹出确认提示窗Confirm

    前端js代码: function MyConfirm(message, guid) { if (confirm(message) == true) { document.getElementById( ...

  5. 弹出JS提示框

    弹出JS提示框Page.ClientScript.RegisterStartupScript(typeof(string), "msg", "<script> ...

  6. [转] 在Asp.net前台和后台弹出提示框

    一.在前台弹出提示框 1.点击"A"标记或者"控件按钮"弹出提示框 <asp:LinkButton ID="lbtnDel" runa ...

  7. PHP自定义弹出消息类,用于弹出提示信息并返回

    一个用PHP自写的弹出消息类,用于在程序出错时弹出提示,,弹出警告框,或在程序运行到某阶段的快捷提示,需用时只需传入参数即可,函数并不复杂,但觉得挺实用.具体代码: function Alert($a ...

  8. SQL错误代码弹出提示信息类

    截获SQL错误代码弹出提示信息类 Code:public class DBErrorCode{    /// <summary>    /// 根据错误代码弹出错误提示    /// &l ...

  9. 同学帮帮移动 H5 弹出层类组件:txbb-pop

    Txbb.Pop 同学帮帮弹出层类组件,简洁.无依赖,使用 CSS3 实现动画效果. 为什么要再造一遍轮子 弹出层是常见的业务场景,而且弹出层的业务场景很简单,没必要使用大而全的库,并且,我们经常会有 ...

随机推荐

  1. src 小心得

    关于src的引用,不要用相对路径,  ../   虽然省事,但是跳转页面时容易出错. 举个例子: 在web页面引用  D:\phpStudy\WWW\ueditor\utf8-php 这个文件夹下面  ...

  2. STM32F10xx CAN BUS相关库文件"stm32f10x_can.c"内的库函数解析

    一.背景: 还是继续CAN通信,要节省开发时间,使用库函数可大大降低开发周期,并且还能确保寄存器的配置几 乎是万无一失,所以,在此就STM32F10xx的CAN操作库函数的使用做个简析. STM32有 ...

  3. 【C语言入门教程】4.8 指针数组

    指针数组是一种特殊的数组,这类数组存放的全部是同一数据类型的内存地址.指针数组的定义形式为: 数据类型 *数组名[长度]; 例如: const char *c[4] = { "China&q ...

  4. InnoDB为什么要使用auto_Increment

    在Mysql表设计中,通常会使用一个与业务无关的自增列做为主键.这是因为Mysql默认使用B-Tree索引,你可以简单理解为"排好序的快速查找结构".如下是一个B-Tree的结构图 ...

  5. 小心一些,断言可能让你的造成循环引用NSAssert

    block和self的相互引用造成的循环引用,想必大家都是明白的.上下面的代码(截取部分) __weak typeof(self) weakSelf = self; self.jsBridgeFunc ...

  6. php正则预查

    php正则预查 // 把ing结尾的单词词根部分(即不含ing部分)找出来$str = 'hello ,when i am working , don not coming';零宽度:站在原地往前看, ...

  7. HDU 5122 K.Bro Sorting(2014北京区域赛现场赛K题 模拟)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5122 解题报告:定义一种排序算法,每一轮可以随机找一个数,把这个数与后面的比这个数小的交换,一直往后判 ...

  8. Android坐标系统

     1 背景 去年有很多人私信告诉我让说说自定义控件,其实通观网络上的很多博客都在讲各种自定义控件,但是大多数都是授之以鱼,却很少有较为系统性授之于渔的文章,同时由于自己也迟迟没有时间规划这一系列文章, ...

  9. 最简单的Android教程之自定义控件

    新建title.xml,完成布局 新建一个TitleLayout继承 LinearLayout. activity_main.xml中引用 Run your applicaiton , and try ...

  10. OpenCV成长之路(8):直线、轮廓的提取与描述

    基于内容的图像分析的重点是提取出图像中具有代表性的特征,而线条.轮廓.块往往是最能体现特征的几个元素,这篇文章就针对于这几个重要的图像特征,研究它们在OpenCV中的用法,以及做一些简单的基础应用. ...