Javascript通过c#asp.net中的自定义页面库导致多次迭代
我一直在寻找答案,现在已经穷途末路了。我有一个自定义的页面库,当head部分有一个带有javascript onload()的脚本标记时,每个页面库都会重新加载。如果有4个,页面第一次遍历基中的重写,FindControl全部加载,我插入一些动态控件,一切都很好,然后它再次遍历基4次Javascript通过c#asp.net中的自定义页面库导致多次迭代,c#,javascript,asp.net,load,C#,Javascript,Asp.net,Load,我一直在寻找答案,现在已经穷途末路了。我有一个自定义的页面库,当head部分有一个带有javascript onload()的脚本标记时,每个页面库都会重新加载。如果有4个,页面第一次遍历基中的重写,FindControl全部加载,我插入一些动态控件,一切都很好,然后它再次遍历基4次 PartialCachingControl ucHeader = (PartialCachingControl)Page.LoadControl("App_Controls/BaseHeaderControl.as
PartialCachingControl ucHeader = (PartialCachingControl)Page.LoadControl("App_Controls/BaseHeaderControl.ascx");
HtmlContainerControl divHeader = (HtmlContainerControl)FindControl("divHeader");
if (divHeader != null && ucHeader != null)
{
divHeader.Controls.Add(ucHeader);
if (ucHeader.Controls.Count == 0)
{
divHeader.Visible = false;
}
}
第一次一切正常时,我可以在usercontrol中找到控件,它运行得很好,第二次,usercontrol控件为0。因此,它不会在页面上造成问题,因为它会循环浏览,然后忽略它,然后继续
没有任何javascript,它工作得非常完美
主要的问题是,我试图使没有内容的div不可见,所以当我设置(pseudo)如果usercontrol control等于0,usercontrol visible等于false,第一次它不是false,但是第二次和后续时间它是false,所以它总是以false结束
帮助。您是否考虑过简单地将内容包装在
ASP:Panel
或ASP:PlaceHolder
控件中,并根据需要将Visible
设置为true
/false
?我知道这并不是你问题的答案,但有时手动操作HTML控件会变得很棘手,因为页面生命周期会涉及其中。我想知道这里是否发生了这种情况。你能发布加载的javascript吗?它是任何javascript或css,我通过在文件夹中配置带有css或javascript文件的IgnoreRoute解决了这个问题。工作得很有魅力。1分钟的工作解决了大约100个头痛问题。@Daniel,你可以发布自己问题的答案。这样做完全可以接受,请参阅。