How to fire JS from code behind of a UserControl b

2020-04-18 03:23发布

问题:

In ASP.NET C#, I want to show an ALERT('HI') from codebehind of a UserControl but doesn't work:

User Control:

<asp:UpdatePanel ID="updatepanel" runat="server" UpdateMode="Conditional">
    <ContentTemplate>
<asp:Button ID="btnSubmit" runat="server" Text="Submit" OnClick="btnSubmit_Click();"/>
    </ContentTemplate>
</asp:UpdatePanel>

ASP.NET Page

protected void btnSubmit_Click(object sender, EventArgs e)
{
    ScriptManager.RegisterStartupScript(this, this.GetType(), "s1", "javascript:alert('hi!')", true);
}

UPDATE:

Forgot to say that the ASP.NET page itself is pop-out window by "prettyPhoto".

回答1:

there may be below possible reasons try to change these and check it works or not

 1). ScriptManager.RegisterStartupScript(this, this.GetType(), "msg", "alert('hi!')", true);//no need to use javascript with alert when bool set to true

 2). ScriptManager.RegisterStartupScript(page, page.GetType(), "msg", "alert('hi!')", true);

 3). ClientScript.RegisterClientScriptBlock(GetType(), "sas", "<script> alert('hi!');</script>", true);