【发布时间】:2014-12-10 20:11:27
【问题描述】:
我正在编写一个需要引用 JavaScript 文件和 CSS 文件的 ASCX 控件。
显然,我只希望主机页面引用这些文件一次。所以我使用Page.ClientScript.RegisterClientScriptInclude() 来引用JavaScript 文件。然而,CSS 文件有点复杂。
我想也许我可以做到以下几点:
if (!Page.ClientScript.IsClientScriptIncludeRegistered(ScriptManagerJsKey))
{
Page.ClientScript.RegisterClientScriptInclude(this.GetType(), ScriptManagerJsKey, ResolveClientUrl("~/javascript/PaymentSchedule.js"));
HtmlLink cssLink = new HtmlLink();
cssLink.Href = "~/css/PaymentSchedule.css";
cssLink.Attributes["rel"] = "stylesheet";
cssLink.Attributes["type"] = "text/css";
Page.Header.Controls.Add(cssLink);
}
这里的想法是添加一个HtmlLink 来引用页眉中的CSS 文件,但只能引用一次。因为我相信这段代码只会添加一次 JavaScript 引用,所以我认为这可以解决问题。
但是,这实际上在文件的 head 部分中添加了对 CSS 文件的引用两次。
有没有人发现从 ASCX 控件中仅引用一次 CSS 文件的技巧?
【问题讨论】:
标签: asp.net webforms webusercontrol