當在做項目時,通常我們會大量的使用主版頁面,使用主版頁面的好處顯而易見,但通常在內容頁中嵌套主版頁面時,我們還要在內容頁中調用css樣式和 javascript函數,好處有了,問題也來了。有兩種解決方案,第一種就是在主版頁面的頭部<head></head>標記中,嵌入所有css樣式和javascript函數,這樣做使得主版頁面的內容非常龐大,如果其中的一些內容頁並不需要其中的css樣式和js函數,在頁面載入時,還是會去從主版頁面中載入,所以這種方案雖然可行,但並不完美。方案二:就是在主版頁面的頭部<head></head>標記中放入<asp:ContentPlaceHolder id="head" runat="server"> </asp:ContentPlaceHolder>控制項,在內容頁中再添加一個< asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">控制項,ID屬性設為<asp:ContentPlaceHolder>的ID值。這樣就可以在內容頁中嵌入css樣式和js函數了。下面是代碼,我的開發環境是Microsoft Visual Studio 2008.
主版頁面代碼:
<%@ Master Language="C#" AutoEventWireup="true" CodeFile="indexPage.master.cs"
Inherits="indexPage" %> <%@ Register Assembly="AjaxControlToolkit"
Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"><head id="Head1" runat="server">
<title>Home Page</title> <%--此處放入ContentPlaceHolder控制項 --%>
<asp:ContentPlaceHolder id="head" runat="server"> </asp:ContentPlaceHolder>
<meta http-equiv="content-type" content="text/html;charset=utf-8" /></head>
內容頁代碼:
<%@ Page Title="" Language="C#" MasterPageFile="~/indexPage.master"
AutoEventWireup="true" CodeFile="companiesTest.aspx.cs"
Inherits="companiesTest" %><asp:Content ID="Content1"
ContentPlaceHolderID="head" Runat="Server">
<%-- Content控制項內,放入要調用的css樣式和js函數--%>
<link href="css/uses.css" rel="stylesheet" type="text/css" />
<%-- 此處放入要調用的css樣式和js函數--%>
<link href="css/youle.css" rel="stylesheet" type="text/css" />
<link href="css/slide4.css" rel="stylesheet" type="text/css" />
<link href="css/pointStyleSheet.css" rel="Stylesheet" type="text/css"/>
<script type="text/javascript" src="js/youle.js"></script>
<link href="OKQQ/images/qq.css" rel="stylesheet" type="text/css" />
<script language='javascript' src='OKQQ/ServiceQQ.js'
type='text/javascript' charset='utf-8'></script></asp:Content >
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1"
Runat="Server"></asp:Content>
到這裡就已經完成了在內容頁中插入css樣式和js函數的目的了。