在写项目时想对asp.net的注册前台脚本事件进行封装,就添加了一个BasePage.cs页面,但一直报错‘非静态的字段、方法或属性“System.Web.UI.Page.ClientScript...”要求对象引用”’
原写法:
/// <summary>
/// 显示客户端提示框
/// </summary>
/// <param name="msg"></param>
public static void ShowMsg(string msg)
{
ClientScript.RegisterStartupScript(ClientScript.GetType(), "myscript ", "<script type=\"text/javascript\">showInMsg('" + msg + "');</script> ");
}
解决方法:
改成
/// <summary>
/// 显示客户端提示框
/// </summary>
/// <param name="msg"></param>
public static void ShowMsg(string msg)
{
Page page = (Page)System.Web.HttpContext.Current.Handler;
page.ClientScript.RegisterStartupScript(page.GetType(), "myscript ", "<script type=\"text/javascript\">showInMsg('" + msg + "');</script> ");
}
就可以 了