我有一个名为CoursesPage.aspx的页面,它有一个母版页。在CoursesPage.aspx中,我使用课程名称上的自动完成jquery来更好地搜索。这是我的脚本代码:
<link rel="stylesheet" href="css/jquery-ui.css" />
<script src="js/jquery-1.8.3.js" type="text/javascript" language="javascript"></script>
<script src="js/jquery-ui.js" type="text/javascript" language="javascript"></script>
<script type="text/javascript" language="javascript">
function LoadList() {
var ds = null;
ds = <%=listFilter %>
$("#txtName3").autocomplete({
source: ds
});
}
</script>
如果我不使用母版页,此代码可以正常工作。但是,我无法将其放在CoursesPage.aspx的Content标记中。它需要在head标签中,但我无法在内容标签中添加它。 请指导我。
其次,在加载body标签时会调用此函数,但我也无法添加正文标记。
答案 0 :(得分:1)
您可以在母版页的头部添加内容占位符,例如:
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
然后在页面中,您可以将脚本添加到母版页的头部,方法是将其包含在引用head
的内容标记中,如下所示:
<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
<link rel="stylesheet" href="css/jquery-ui.css" />
<script src="js/jquery-1.8.3.js" type="text/javascript" language="javascript"></script>
<script src="js/jquery-ui.js" type="text/javascript" language="javascript"></script>
<script type="text/javascript" language="javascript">
function LoadList() {
var ds = null;
ds = <%=listFilter %>
$("#txtName3").autocomplete({
source: ds
});
}
</script>
</asp:Content>
这不能嵌套在任何其他内容标签中。
答案 1 :(得分:1)
在您的母版页中有两个ContentPlaceHolder标记,一个在头部,另一个在正文中。 您必须在Courses.aspx页面中添加两个内容标记,并将其中一个ContenetPlaceHolderID属性设置为母版主页的ContentPlaceHolder。 例如: 您的母版页:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="ResponsiveTemplate.Site" %>
<!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 runat="server">
<asp:ContentPlaceHolder ID="Head" runat="server">
</asp:ContentPlaceHolder>
</head>
<body>
<asp:ContentPlaceHolder ID="Content" runat="server">
</asp:ContentPlaceHolder>
</body>
</html>
和你的aspx页面:
<%@ Page Language="C#" AutoEventWireup="true" MasterPageFile="~/Site.Master" CodeBehind="WebForm2.aspx.cs" Inherits="ResponsiveTemplate.WebForm2" %>
<asp:Content ID="content1" runat="server" ContentPlaceHolderID="Head">
<link rel="stylesheet" href="css/jquery-ui.css" />
<script src="js/jquery-1.8.3.js" type="text/javascript" language="javascript"></script>
<script src="js/jquery-ui.js" type="text/javascript" language="javascript"></script>
<script type="text/javascript" language="javascript">
function LoadList() {
var ds = null;
ds = <%=listFilter %>
$("#txtName3").autocomplete({
source: ds
});
}
</script>
</asp:Content>
<asp:Content ID="content2" runat="server" ContentPlaceHolderID="Content">
</asp:Content>