出色地。我面临的问题是我有自己的自定义控件,我进行查询、获取记录并根据数据动态地将 html 控件添加到页面。
现在有添加一些动态javascript的问题
我在文字控件的帮助下做到了这一点。
<asp:Literal runat="server" ID="latEventToolTipJqueryScripts"></asp:Literal>
这就像一个魅力
<script language="javascript" type="text/javascript">
// <![CDATA[
Sys.Application.add_load(WireEvents_<%=this.ID%>); // fix wiring for .NET ajax updatepanel
$(WireEvents_<%=this.ID%>); // handle page load wiring
function WireEvents_<%=this.ID%>() {
<asp:Literal runat="server" ID="latEventToolTipJqueryScripts"></asp:Literal>
}
// ]]>
</script>
我从后面的代码中动态添加文字文本。
但是,将控件放在更新面板中时,回发不会更新脚本。
编辑:使用Sys.Application.add_load更新面板重新连接必要的功能。问题是需要代替文字的脚本在更新面板中时不会更新。
我已经尝试过 ClientScript.RegisterStartupScript 但它与文字控制技巧具有相同的效果。有什么帮助吗?
---------------------------------------已解决(tnx 到 Pranay Rana)---------------- ------------------
摆脱了 ascx 方面的文字。以及Sys.Application.add_load
现在它只在后面的代码中。让我失望的是 JQuery 的事情。
this.strBuilderJS.Append( "<script language='javascript' type='text/javascript'>" +
"$(WireEvents_" + this.ID + ");" +
"function WireEvents_" + this.ID + "(){"+
" alert('stuff');");
this.strBuilderJS.Append( "}</script>");
接着
ScriptManager.RegisterStartupScript(this, this.GetType(), "strBuilderJS", strBuilderJS.ToString(), false);