6

我在 OnInit 处理程序中有一些代码

if (!Page.ClientScript.IsStartupScriptRegistered(GetType(), "MyScript"))
{
    Page.ClientScript.RegisterStartupScript(GetType(), "MyScript", GetStartupScript(), true);
}

在这里我尝试注册一些java脚本代码。我希望它可以处理按钮单击事件。但它不执行。它仅在刷新页面后执行。谁能解释我为什么它不执行?

提前谢谢!

4

3 回答 3

13

尝试这个:

ScriptManager.RegisterStartupScript(this, typeof(string), "Error", 
    "alert('hi');", true);

问题是在某些页面上您可能已经声明了ScriptManager. ScriptManager每页只允许一个,因此您必须使用现有的ScriptManager来注册任何脚本。

请注意,这RegisterStartupScript是一个静态方法;不要在你的实例上调用它ScriptManager(它会在 C# 中导致编译错误,但在 VB.NET 中只会出现警告)。

这个链接有更多关于这个问题的信息。

于 2012-04-28T12:34:43.713 回答
2
 string msg = "This is variable message";
 Page.ClientScript.RegisterStartupScript(typeof(Page), "well1", "<script>alert('" + msg + "');</script>");
于 2012-12-13T05:50:18.703 回答
-4

这对我来说很好:

Response.Write("<script type='text/javascript'>alert('" + AlerteMsg + "');</script>");
于 2012-11-27T15:56:46.240 回答