我有一个带头的 aspx 页面
<head runat="server" id="head">
<title></title>
</head>
现在我正在处理的站点正在从 xml 文件中提取信息,我想从 xml 文件中获取一个节点并将其附加到 head 部分。
<head runat="server" id="head">
<title></title>
<script></script> // comes from the xml file
</head>
但是,当我尝试其中任何一个时。
protected void Page_Init(object sender, EventArgs e)
{
this.Page.Header.InnerHtml += xml.Header; // errors out
this.Page.Header.InnerHtml = this.Page.Header.InnerHtml + xml.Header; // errot ut
}
它出错了
System.Web.HttpException 未被用户代码处理 Message=Cannot get inside content of head 因为内容不是文字。
如果我这样做
protected void Page_Init(object sender, EventArgs e)
{
this.Page.Header.InnerHtml = xml.Header;
}
一切皆好。
如果我这样做
<head runat="server" id="head">
// removed the title tag so now nothing is in head
</head>
然后这样做
protected void Page_Init(object sender, EventArgs e)
{
this.Page.Header.InnerHtml += xml.Header; // works
this.Page.Header.InnerHtml = this.Page.Header.InnerHtml + xml.Header; //works
}
有用。所以我不确定为什么当头部已经有标签时它会失败。
如果我也尝试从头部获取内容,我也会得到同样的错误
var a = this.Page.Header.InnerHtml;
var a = this.Page.Header.InnerText;