using System.Web;
/// <summary>
/// Javascript常用方法
/// </summary>
public class JS
{
private static string ScriptStart = "<script type=\"text/javascript\">";
private static string ScriptEnd = "</script>";
/// <summary>
/// 寫入JS指令碼內容
/// </summary>
/// <param name="ScriptString">指令碼內容</param>
/// <param name="IsResponseEnd">是否中斷服務端指令碼執行</param>
public static void WriteScript(string ScriptString, bool IsResponseEnd)
{
HttpContext.Current.Response.Write(ScriptStart);
HttpContext.Current.Response.Write(ScriptString);
HttpContext.Current.Response.Write(ScriptEnd);
if (IsResponseEnd)
{
HttpContext.Current.Response.End();
}
}
/// <summary>
/// 彈出警告框
/// </summary>
/// <param name="AlertMessage">提示資訊</param>
/// <param name="IsResponseEnd">是否中斷服務端指令碼執行</param>
public static void Alert(string AlertMessage, bool IsResponseEnd)
{
HttpContext.Current.Response.Write(ScriptStart);
HttpContext.Current.Response.Write("alert('" + AlertMessage + "');history.back();");
HttpContext.Current.Response.Write(ScriptEnd);
if (IsResponseEnd)
{
HttpContext.Current.Response.End();
}
}
/// <summary>
/// 彈出警告框並跳轉
/// </summary>
/// <param name="AlertMessage">提示資訊</param>
/// <param name="RedirectPath">跳轉路徑</param>
/// <param name="IsTopWindow">是否為全屏跳轉</param>
public static void Alert(string AlertMessage, string RedirectPath, bool IsTopWindow)
{
HttpContext.Current.Response.Write(ScriptStart);
HttpContext.Current.Response.Write("alert('" + AlertMessage + "');");
if (IsTopWindow)
{
HttpContext.Current.Response.Write("parent.top.location.href='" + RedirectPath + "';");
}
else
{
HttpContext.Current.Response.Write("location.href='" + RedirectPath + "';");
}
HttpContext.Current.Response.Write(ScriptEnd);
HttpContext.Current.Response.End();
}
/// <summary>
/// 彈出警告框並關閉視窗
/// </summary>
/// <param name="AlertMessage">提示資訊</param>
public static void AlertAndClose(string AlertMessage)
{
HttpContext.Current.Response.Write(ScriptStart);
HttpContext.Current.Response.Write("alert('" + AlertMessage + "');window.close();");
HttpContext.Current.Response.Write(ScriptEnd);
HttpContext.Current.Response.End();
}
/// <summary>
/// 全屏跳轉
/// </summary>
/// <param name="RedirectpPath">跳轉路徑</param>
public static void TopRedirect(string RedirectpPath)
{
HttpContext.Current.Response.Write(ScriptStart);
HttpContext.Current.Response.Write("parent.top.location.href='" + RedirectpPath + "';");
HttpContext.Current.Response.Write(ScriptEnd);
HttpContext.Current.Response.End();
}
/// <summary>
/// 判斷並跳轉
/// </summary>
/// <param name="confirmMessage">提示資訊</param>
/// <param name="YesRedirectPath">選擇“是”後跳轉的路徑</param>
/// <param name="NoRedirectPath">選擇“否”後跳轉的路徑</param>
/// <param name="IsResponseEnd">是否中斷服務端指令碼執行</param>
public static void ConfirmRedirect(string confirmMessage, string YesRedirectPath, string NoRedirectPath, bool IsResponseEnd)
{
HttpContext.Current.Response.Write(ScriptStart);
HttpContext.Current.Response.Write("if(confirm('" + confirmMessage + "')){location.href='" + YesRedirectPath + "';}else{location.href='" + NoRedirectPath + "';}");
HttpContext.Current.Response.Write(ScriptEnd);
if (IsResponseEnd)
{
HttpContext.Current.Response.End();
}
}
/// <summary>
/// 判斷並寫入指令碼代碼
/// </summary>
/// <param name="confirmMessage">提示資訊</param>
/// <param name="YesScript">選擇“是”後寫入的指令碼內容</param>
/// <param name="NoScript">選擇“否”後寫入的指令碼內容</param>
/// <param name="IsResponseEnd">是否中斷服務端指令碼執行</param>
public static void ConfirmScript(string confirmMessage, string YesScript, string NoScript, bool IsResponseEnd)
{
HttpContext.Current.Response.Write(ScriptStart);
HttpContext.Current.Response.Write("if(confirm('" + confirmMessage + "')){" + YesScript + "}else{" + NoScript + "}");
HttpContext.Current.Response.Write(ScriptEnd);
if (IsResponseEnd)
{
HttpContext.Current.Response.End();
}
}
}