我有一个页面,其中有一个母版页.我是否将脚本和链接标签放在asp:content占位符或外部或者是否重要.
当我把它放在外面时,我得到以下警告:
只有内容控件才能直接包含在包含内容控件的内容页面中.
我可以看到五种(或8种)方式:
"只允许内容控件直接在包含内容控件的内容页面中" - 你忘记了runat ="server"吗?
如果它是所有页面的脚本和链接,它应该在任何ContentPlaceHolders之外.如果它是此页面的脚本和链接,它应该进入头部内部的内容.如果是默认脚本,请将其放在头部ContentPlaceHolder中,如果需要,可以将其替换为子页面.(VS通常会抱怨头部中的ContentPlaceHolder,但它对我来说很好).
// master Page
<head runat="server">
<asp:ContentPlaceHolder id="head" runat="server">
<!-- Default scripts and CSS -->
<link rel="stylesheet" type="text/css" href="default.css" />
<script type="text/javascript" src="jquery.js"></script>
</asp:ContentPlaceHolder>
<!-- Mandatory scripts and css -->
<link rel="stylesheet" type="text/css" href="all.css" />
<script type="text/javascript" src="all.js"></script>
</head>
<body>
Master Page!
<asp:ContentPlaceHolder id="body" runat="server" />
</body>
// Child (no JQuery)
<asp:Content ContentPlaceHolderID="head" runat="server">
<link rel="stylesheet" type="text/css" href="default.css" />
<!-- Don't need JQuery -->
<script type="text/javascript" src="prototype.js"></script>
</asp:Content>
<asp:Content ContentPlaceHolderID="body" runat="server">
Child Page!
</asp:Content>
// Child 2 (with JQuery)
<asp:Content ContentPlaceHolderID="body" runat="server">
Child Page!
</asp:Content>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
17830 次 |
| 最近记录: |