今天做提示框的時候一直不顯示,讓我鬱悶好久,晚上吃飯的時候問了同事一下,他給了一個思路, 他說可能是因為由於頁面中的無閃刷新導致的結果;百度了一下真找到瞭解決方法 在頁面中存在無閃刷新控制項的時候提示框不能在用普通的,要特殊的處理一下; /// <summary> /// 顯示提示信息(用於頁面中存在 ...
今天做提示框的時候一直不顯示,讓我鬱悶好久,晚上吃飯的時候問了同事一下,他給了一個思路,
他說可能是因為由於頁面中的無閃刷新導致的結果;百度了一下真找到瞭解決方法
在頁面中存在無閃刷新控制項的時候提示框不能在用普通的,要特殊的處理一下;
/// <summary>
/// 顯示提示信息(用於頁面中存在無閃刷新控制的提示)
/// </summary>
/// <param name="controlName">無閃刷新控制項名稱</param>
/// <param name="message">消息內容</param>
public static void UserControlMessageShow(Control controlName, string message)
{
ScriptManager.RegisterClientScriptBlock(controlName, typeof(UpdatePanel), "提示", "alert('" + message + "');", true);
}
普通的提示框:
/// <summary>
/// 顯示提示信息
/// </summary>
/// <param name="page">頁面對象</param>
/// <param name="msg">消息</param>
public static void MessageShow(System.Web.UI.Page page, string message)
{
if (message == null || message == String.Empty)
return;
message = ToJsString(message);
string js = "<script>alert('" + message + "');</script>";
page.ClientScript.RegisterClientScriptBlock(page.GetType(),"append_message", js);
}
還有另一種“用戶控制項”的提示框:
1.方法一
/// <summary>
/// 顯示提示信息
/// </summary>
/// <param name="page">頁面對象</param>
/// <param name="msg">消息</param>
public static void UserControlMessageShow(System.Web.UI.UserControl userControl, string message)
{
if (message == null || message == String.Empty)
return;
message = ToJsString(message);
string js = "<script>alert('" + message + "');</script>";
userControl.Page.ClientScript.RegisterClientScriptBlock(userControl.Page.GetType(), "append_message", js);
}
2.方法二
/// <summary>
/// 顯示提示信息
/// </summary>
/// <param name="page">頁面對象</param>
/// <param name="msg">消息</param>
public static void UserControlMessageShow(System.Web.UI.UserControl userControl, string message, string goPage)
{
if (message == null || message == String.Empty)
return;
message = ToJsString(message);
StringBuilder sb = new StringBuilder();
sb.Append("<script>");
sb.AppendFormat("alert('{0}');", message);
sb.AppendFormat("window.location.href='{0}';", goPage);
sb.Append("</script>");
userControl.Page.ClientScript.RegisterClientScriptBlock(userControl.Page.GetType(), "append_message", sb.ToString());
}