6

i have some code in OnInit hanlder

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

here i try to register some java script code. and i want it to work on button click event. but it doesn't execute. it executes only after refreshing page. can anyone explain me why it doesn't execute?

thnx in advance!

1

3 Answers 3

13

Try this:

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

The issue is that on some pages you might have declared a ScriptManager. Only one ScriptManager is allowed per page so you have to use the existing ScriptManager to register any scripts.

Note that the RegisterStartupScript is a static method; do not call it on the instance of your ScriptManager (it will cause a compile error in C# but only a warning in VB.NET).

This link has a bit more info on this issue.

1
2
 string msg = "This is variable message";
 Page.ClientScript.RegisterStartupScript(typeof(Page), "well1", "<script>alert('" + msg + "');</script>");
-4

this worked fine for me :

Response.Write("<script type='text/javascript'>alert('" + AlerteMsg + "');</script>");
1
  • 11
    Please, for the sake of everything holy. Tell us you were not serious. Commented Jan 20, 2014 at 10:57

Not the answer you're looking for? Browse other questions tagged or ask your own question.