测试页面,一个 ASPX。 一个 ASCX ,都很简单。
ASPX 页面内容:
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Panel ID="panControl" runat="server">
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Panel ID="panControl" runat="server">
<asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="Button" />
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
Button1_Click 后台代码:
Control con = Page.LoadControl("WebUserControl2.ascx");
this.panControl.Controls.Add(con);
this.panControl.Controls.Add(con);
ASCX 页面内容:
<script language="javascript" type="text/javascript">
function ff()
{
alert("ff");
}
</script><span onclick="ff();">abc</span>
function ff()
{
alert("ff");
}
</script><span onclick="ff();">abc</span>
总是报 缺少对象的错误,就是找不到 ff 这个方法。 如果把 ASCX 的 onclick 事件代码不写成函数,就可以。并且。把ASCX 的脚本代码放到 ASPX 也是可以的。
奇怪。