You can use registerstartupscript instead of registerclientscriptblock!
RegisterStartupScript
When you use RegisterStartupScript, it will render your script after all the elements in the page (right before the form's end tag). This enables the script to call or reference page elements without the possibility of it not finding them in the Page's DOM
RegisterClientScriptBlock
When you use RegisterClientScriptBlock, the script is rendered right after the Viewstate tag, but before any of the page elements. Since this is a direct script (not a function that can be called, it will immediately be executed by the browser. But the browser does not find the label in the Page's DOM at this stage and hence you should receive an "Object not found" error
Difference between registerstartupscript and registerclientscriptblock
protected void Page_Load(object sender, System.EventArgs e)
{
string myScript = "
<script type="text/javascript" language="Javascript" id="EventScriptBlock">
";
myScript += "alert('hi');";
myScript += "
</script>";
Page.ClientScript.RegisterStartupScript(this.GetType(), "myKey", myScript, false);
}
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…