Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/271.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Page.ClientScript.RegisterStartupScript不';不行-为什么?_C#_Asp.net_Registerstartupscript - Fatal编程技术网

C# Page.ClientScript.RegisterStartupScript不';不行-为什么?

C# Page.ClientScript.RegisterStartupScript不';不行-为什么?,c#,asp.net,registerstartupscript,C#,Asp.net,Registerstartupscript,我在OnInit hanlder中有一些代码 if (!Page.ClientScript.IsStartupScriptRegistered(GetType(), "MyScript")) { Page.ClientScript.RegisterStartupScript(GetType(), "MyScript", GetStartupScript(), true); } 这里我尝试注册一些java脚本代码。我想让它在按钮点击事件上工作。但它不会执行。它仅在刷新页面后执行。有人能解

我在OnInit hanlder中有一些代码

if (!Page.ClientScript.IsStartupScriptRegistered(GetType(), "MyScript"))
{
    Page.ClientScript.RegisterStartupScript(GetType(), "MyScript", GetStartupScript(), true);
}
这里我尝试注册一些java脚本代码。我想让它在按钮点击事件上工作。但它不会执行。它仅在刷新页面后执行。有人能解释一下为什么它不能执行吗

提前通知

试试这个:

ScriptManager.RegisterStartupScript(this, typeof(string), "Error", 
    "alert('hi');", true);
问题是,在某些页面上,您可能已经声明了
ScriptManager
。每页只允许一个
ScriptManager
,因此您必须使用现有的
ScriptManager
来注册任何脚本

请注意,
RegisterStartupScript
是一个静态方法;不要在
脚本管理器
的实例上调用它(它将导致C#中的编译错误,但在VB.NET中只会发出警告)


link提供了关于这个问题的更多信息。

这对我来说很好:

Response.Write("<script type='text/javascript'>alert('" + AlerteMsg + "');</script>");
Response.Write(“警报(“+AlerteMsg+”);”;
string msg=“这是可变消息”;
Page.ClientScript.RegisterStartupScript(typeof(Page),“well1”,“alert(“+msg+”);”);

可能与页面生命周期事件有关。看在上帝的份上,你可以看看。告诉我们你不是认真的,这很有效。如果你想要一个简短但好的解释,请检查
 string msg = "This is variable message";
 Page.ClientScript.RegisterStartupScript(typeof(Page), "well1", "<script>alert('" + msg + "');</script>");