部分渲染后Javascript没有执行

时间:2010-11-15 21:53:43

标签: javascript asp.net updatepanel renderpartial

我有一个最初隐藏的asp.net面板,并在单击按钮时显示。该面板中有javascript,并且在面板设置为可见后不会执行。我可以看到javascript函数在页面上输出但是没有被调用。我该怎么做才能调用函数?这是一个例子:

<asp:LinkButton id="lbtn" runat="server" Text="show" OnClick="lbtn_Click" />
    <asp:UpdatePanel id="upnl" runat="server" UpdateMode="Conditional">
       <contenttemplate>
        <asp:panel id="pnlContent" runat="server" visible="false">
            content initially hidden.

            <script>
                alert('done!');
            </script>
        </asp:panel>
    </contenttemplate>
    <triggers>
        <asp:AsyncPostBackTrigger ControlID="lbtn"/>
    </triggers>
</asp:UpdatePanel>

2 个答案:

答案 0 :(得分:1)

您可能希望在调用ajax方法时调用某种终结请求方法。这必须在脚本资源下。

<script type="text/javascript">

    var prm = Sys.WebForms.PageRequestManager.getInstance();
    prm.add_endRequest(function(sender, args){ alert("endRequest"); });

</script>

答案 1 :(得分:0)

为什么不使用Page.ClientScript.RegisterStartupScript() l来触发它来运行。

而不是这样做