比如说,数据保存成功后要提示用户保存成功.
我们一般的做法是
Response.Write("<script>alert('Save successfully.')</script>");
但是如果页面套在MasterPage的一个iframe的话,在后台代码调用上面的语句,
页面的样式就变了.我们可以通过下面的办法来解决
1using System;
2using System.Data;
3using System.Configuration;
4using System.Web;
5using System.Web.Security;
6using System.Web.UI;
7using System.Web.UI.WebControls;
8using System.Web.UI.WebControls.WebParts;
9using System.Web.UI.HtmlControls;
10using System.Text;
11
12/// <summary>
13/// A Javascript Alert
14/// </summary>
15public class Alert
16{
17 public Alert()
18 {
19
20 }
21
22 public static void Show(string message)
23 {
24 string strMessage = message.Replace("'", "\\'");
25 string script = "<script type=\"text/javascript\">alert('" + strMessage + "');</script>";
26 Page page = HttpContext.Current.CurrentHandler as Page;
27 if (page != null && !page.ClientScript.IsClientScriptBlockRegistered("alert"))
28 {
29 page.ClientScript.RegisterClientScriptBlock(typeof(Alert),"alert",script);
30 }
31 }
32
33 public static void ShowMessage()
34 {
35 throw new Exception("The method or operation is not implemented.");
36 }
37}
38
39
2using System.Data;
3using System.Configuration;
4using System.Web;
5using System.Web.Security;
6using System.Web.UI;
7using System.Web.UI.WebControls;
8using System.Web.UI.WebControls.WebParts;
9using System.Web.UI.HtmlControls;
10using System.Text;
11
12/// <summary>
13/// A Javascript Alert
14/// </summary>
15public class Alert
16{
17 public Alert()
18 {
19
20 }
21
22 public static void Show(string message)
23 {
24 string strMessage = message.Replace("'", "\\'");
25 string script = "<script type=\"text/javascript\">alert('" + strMessage + "');</script>";
26 Page page = HttpContext.Current.CurrentHandler as Page;
27 if (page != null && !page.ClientScript.IsClientScriptBlockRegistered("alert"))
28 {
29 page.ClientScript.RegisterClientScriptBlock(typeof(Alert),"alert",script);
30 }
31 }
32
33 public static void ShowMessage()
34 {
35 throw new Exception("The method or operation is not implemented.");
36 }
37}
38
39
我们在调用的时候只要新建一个Alert的实例,然后调用ShowMessage方法就可以
Alert alert = new Alert();
alert.Show("Save successfully.");