ASP.NET母版页:如何在aspx的头部分插入标记?

ASP.NET母版页:如何在aspx的头部分插入标记?,asp.net,header,master-pages,declarative,Asp.net,Header,Master Pages,Declarative,我知道我可以这样做(在代码隐藏中): 这只是一个示例(我想插入脚本和样式等): 在aspx文件本身的上,是否有一种简单的方法以声明性的方式执行此操作 有时插入客户端脚本或样式声明或指向外部资源的链接会很方便。我还没有尝试过这一点。 但您可以将HEAD元素放在带有asp样式标记中的封闭字符串的html中 e、 g。 对于样式表,您可以使用: HtmlLink cssRef = new HtmlLink(); cssRef.Href = "addins/main.css"; cssRef.Attri

我知道我可以这样做(在代码隐藏中):

这只是一个示例(我想插入脚本和样式等):

在aspx文件本身的上,是否有一种简单的方法以声明性的方式执行此操作

有时插入客户端脚本或样式声明或指向外部资源的链接会很方便。

我还没有尝试过这一点。
但您可以将HEAD元素放在带有asp样式标记中的封闭字符串的html中

e、 g。

对于样式表,您可以使用:

HtmlLink cssRef = new HtmlLink();
cssRef.Href = "addins/main.css";
cssRef.Attributes["rel"] = "stylesheet";
cssRef.Attributes["type"] = "text/css";
Page.Header.Controls.Add(cssRef);
对于元标记

HtmlMeta metaTag = new HtmlMeta();
metaTag.Name = "author";
metaTag.Content = "ScarletGarden";
Page.Header.Controls.Add(metaTag);
但无法将外部脚本文件添加到header元素

可以通过以下方式添加内部主体元素:

if (!ClientScript.IsClientScriptIncludeRegistered("myExternalScript"))
{
   ClientScript.RegisterClientScriptInclude("myExternalScript", "js/myJSFile.js");
}

希望这有帮助

您可以在内容页声明中声明页面标题

<%@ Title="Page Title" Page Language="C#" AutoEventWireup="true" CodeFile="Subpage.aspx.cs" Inherits="Subpage" MasterPageFile="~/MasterPage.master" %>

您可以通过在
标题中使用内容区域来完成此操作,方法与在页面的
正文中使用内容区域完全相同。例如,在您的主页中:

<head>
    <link type="text/css" rel="stylesheet" href="/styles/common1.css" />
    <script type="text/javascript" src="/scripts/common1.js"></script>
    <asp:contentplaceholder id="ExtraStylesAndScripts" runat="server" />
</head>

然后在页面本身中,就像:

<asp:content contentplaceholderid="ExtraStylesAndScripts" runat="server">    
    <link type="text/css" rel="stylesheet" href="/styles/extra1.css" />
    <link type="text/css" rel="stylesheet" href="/styles/extra2.css" />
    <script type="text/javascript" src="/scripts/extra1.js"></script>
    <script type="text/javascript" src="/scripts/extra2.js"></script>
</asp:content>


我对标题不感兴趣(这只是一个例子)。我想使用intellisense插入脚本、样式等。我不想以编程的方式来做。谢谢你的回答。但我正在寻找一个解决方案,用声明的方式来做。谢谢你的回答。也许我的例子有误导性。我想插入其他东西,比如那个页面的特殊样式和javascript。噢!我真是个白痴。我不知道,但我有一个想法,内容占位符不能用于标题部分。。。谢谢!在VS2008中,3.5下的Visual Studio甚至在创建母版页时为您执行此操作
<asp:content contentplaceholderid="ExtraStylesAndScripts" runat="server">    
    <link type="text/css" rel="stylesheet" href="/styles/extra1.css" />
    <link type="text/css" rel="stylesheet" href="/styles/extra2.css" />
    <script type="text/javascript" src="/scripts/extra1.js"></script>
    <script type="text/javascript" src="/scripts/extra2.js"></script>
</asp:content>