我有一个ASP.NET Webforms项目,其中显示/隐藏UserControl,具体取决于DropDownList的值。
<asp:UpdatePanel ID="pnlUpdate" runat="server">
<ContentTemplate>
<asp:DropDownList ID="ddl" runat="server">
<asp:ListItem Text="Type 1" Value="1" />
<asp:ListItem Text="Type 2" Value="2" />
</asp:DropDownList>
<myControl:myCustomControl Visible="false" />
</ContentTemplate>
</asp:UpdatePanel>
在后面的代码中,myCustomControl
设置为Visible=true
或Visible=false
,具体取决于类型而已
这一切都有效,但我的myCustomControl
中有一些JavaScript函数,并且它们没有被执行。我想这是因为UpdatePanel
动态刷新并加载myCustomControl
。
它包含这样的代码:
<asp:DropDownList ID="ddl2" runat="server" onchange="myJavascriptFunction()">
<asp:ListItem Value="1" Text="">
</asp:DropDownList>
没有UpdatePanel::一切都按预期工作,myJavaScriptFunction()
执行得很好。
使用UpdatePanel::未执行myJavascriptFunction()
。通用错误消息myJavaScriptFunction is not a function
将打印到控制台。
那么,我怎样才能做到这一点?有没有人有任何想法?