我正在尝试在运行时添加一些代码到head元素。当我在页面中加载用户控件时:
HtmlGenericControl hc = new HtmlGenericControl();
hc.InnerHtml = GetParameter("HeaderCode");
Page.Header.Controls.Add(hc);
控件在body标记中结束,作为第一个子元素。例如:
...
</head>
<body>
<span><meta>Test</meta></span>
...
从我的理解,页。Header应该是Head元素。在aspx页面中,头部具有runat="server"
属性集。
任何想法我可以注入一个字符串在<head>
元素?
head元素可能对内容的类型有限制。当我们在header中注入javascript时,我们使用LiteralControl。
例如:Page.Header.Controls.Add(New LiteralControl("<script language='javascript' type='text/javascript'>alert('test');</script>"))
尝试下面的代码添加javascript, css或任何其他资源,如元标签。我已经成功地在我的网站上实现了这段代码:
HtmlGenericControl my_js = new HtmlGenericControl("script");
my_js.Attributes["async"] = "async";
my_js.Attributes["type"] = "text/javascript";
my_js.Attributes["src"] = "http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js";
Page.Header.Controls.Add(my_js);
您需要使用命名空间:"using System.Web.UI. "