Javascript 警报在UpdatePanel VB.Net中不起作用

Javascript 警报在UpdatePanel VB.Net中不起作用,javascript,asp.net,vb.net,alert,Javascript,Asp.net,Vb.net,Alert,这是我试过的 <asp:UpdatePanel ID="UpdatePanel1" runat="server"> <ContentTemplate> <asp:Button OnClick="btnOK1_Click" ID="btnOK1" runat="server" Text="Save" /> </ContentTemplate>

这是我试过的

        <asp:UpdatePanel ID="UpdatePanel1" runat="server">

            <ContentTemplate>
                 <asp:Button OnClick="btnOK1_Click" ID="btnOK1" runat="server" Text="Save" />
            </ContentTemplate>

        </asp:UpdatePanel>
ASPX文件:

        <asp:UpdatePanel ID="UpdatePanel1" runat="server">

            <ContentTemplate>
                 <asp:Button OnClick="btnOK1_Click" ID="btnOK1" runat="server" Text="Save" />
            </ContentTemplate>

        </asp:UpdatePanel>

ASPX.VB:

        <asp:UpdatePanel ID="UpdatePanel1" runat="server">

            <ContentTemplate>
                 <asp:Button OnClick="btnOK1_Click" ID="btnOK1" runat="server" Text="Save" />
            </ContentTemplate>

        </asp:UpdatePanel>
        Protected Sub btnOK1_Click(sender As Object, e As EventArgs)
            Dim alertMsg As String
            Dim alertScript As String
            alertMsg = String.Format("You Selected {0}", "My Message")
            alertScript = String.Format("<script type= text/javascript>alert('{0}');</script>", alertMsg)
            ClientScript.RegisterStartupScript(Me.[GetType](), "Alert", alertScript)
        End Sub
受保护的子btnOK1_单击(发送方作为对象,e作为事件参数)
Dim alertMsg作为字符串
将脚本设置为字符串
alertMsg=String.Format(“您选择了{0}”,“我的消息”)
alertScript=String.Format(“警报({0}”);”,alertMsg)
RegisterStartupScript(Me.[GetType](),“警报”,警报脚本)
端接头
当从后端单击按钮(保存)时,我试图获取一个带有消息的警报框。我尝试了StackOverflow的解决方案。但是,这些代码不适用于我获取javascript警报框。事件触发良好,并在代码中运行。有人帮我吗?

用这些替换你的代码
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">

            <ContentTemplate>
                 <asp:Button OnClick="btnOK1_Click" ID="btnOK1" runat="server" Text="Save" />
            </ContentTemplate>

        </asp:UpdatePanel>
replace your code with these

Protected Sub btnOK1_Click(ByVal sender As Object, ByVal e As EventArgs)
    Dim alertMsg As String
    Dim alertScript As String
    alertMsg = String.Format("You Selected {0}", "My Message")
    alertScript = String.Format("<script type='text/javascript'>alert('{0}');</script>", alertMsg)
    ScriptManager.RegisterStartupScript(Page, Page.GetType, "Alert", alertScript, False)

End Sub
受保护的子btnOK1_单击(ByVal sender作为对象,ByVal e作为事件参数) Dim alertMsg作为字符串 将脚本设置为字符串 alertMsg=String.Format(“您选择了{0}”,“我的消息”) alertScript=String.Format(“警报({0}”);”,alertMsg) ScriptManager.RegisterStartupScript(Page,Page.GetType,“警报”,警报脚本,False) 端接头
问题似乎在于您使用的是
ClientScript
而不是
ScriptManager

        <asp:UpdatePanel ID="UpdatePanel1" runat="server">

            <ContentTemplate>
                 <asp:Button OnClick="btnOK1_Click" ID="btnOK1" runat="server" Text="Save" />
            </ContentTemplate>

        </asp:UpdatePanel>
ClientScript
用于同步回发,而
ScriptManager
用于异步回发

        <asp:UpdatePanel ID="UpdatePanel1" runat="server">

            <ContentTemplate>
                 <asp:Button OnClick="btnOK1_Click" ID="btnOK1" runat="server" Text="Save" />
            </ContentTemplate>

        </asp:UpdatePanel>
有关更多详细信息,请参阅

        <asp:UpdatePanel ID="UpdatePanel1" runat="server">

            <ContentTemplate>
                 <asp:Button OnClick="btnOK1_Click" ID="btnOK1" runat="server" Text="Save" />
            </ContentTemplate>

        </asp:UpdatePanel>