JQuery在ASP中的应用.Net Web表单与母版页

JQuery in ASP.Net Web form with a master page

本文关键字:Web 表单 母版页 Net 应用 ASP JQuery      更新时间:2023-09-26

我有一个名为CoursesPage的页面。它有一个母版页。在CoursesPage。我在课程名称上使用自动完成的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标签中,但我不能在content标签中添加它。请给我指路。

其次,这个函数是在body标签加载时调用的,但是我也不能添加body标签。

在你的主页有两个ContentPlaceHolder标签,一个在头部,另一个在正文。您必须在课程中添加两个Content标签。设置一个contentetplaceholderid属性为母版页头的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>

您可以在母版页的头部添加内容占位符,例如:

<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>

不能嵌套在其他内容标签中