我知道有人问过这个问题,但我有一个比其他相关问题更复杂的问题。
我需要从我的用户控件中引用 CSS 和 JS。
引用必须在<head>
标签内呈现。出于这个原因,我不能使用ScriptManager.RegisterClientScriptBlock
我发现的其他解决方案:
HtmlLink link = new HtmlLink();
link.Href = "/path/style.css";
link.Attributes["type"] = "text/css";
link.Attributes["rel"] = "stylesheet";
Page.Header.Controls.Add(link);
但是,这最终会导致“无法修改控件集合,因为控件包含代码块”
问题是这些代码块位于我无法控制的母版页文件中。因此,此线程中建议的解决方法是不可能的。(例如:包装代码块<asp:placeholder ID="Placeholder1" runat="server">
或替换<%=
为<%#
因此,考虑到上述限制,是否可以从用户控件中放置<link href='path' />
和<script src='path' />
内部<head>
标记?