如何将JavaScript文件链接到ASP .Net中的母版页/内容页?

问题描述 投票:0回答:1

我正在尝试将选定的下拉项目的值打印到标签中,而无需通过JavaScript回发页面。我尝试按照以下方式将我的JavaScript文件链接到我的主页,但是它不起作用。我在下面包括了母版页和内容页以及我的JavaScript文件。我也必须将JavaScript文件链接到内容页面吗?

master page

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="MyMaster.master.cs" Inherits="CodingTest2.MyMaster" %>

<!DOCTYPE html>

<html>
<head runat="server">
    <title>UHCL</title>
    <script src="JavaScript.js"></script>
    <asp:ContentPlaceHolder ID="ContentPlaceHolderHead" runat="server">
    </asp:ContentPlaceHolder>
</head>
<body>
    <form id="form1" runat="server">
        <asp:Image ID="Image1" runat="server" ImageUrl="~/Images/uhclbanner.jpg" Height="154px" Width="950px"/>
        <br />
        <br />
        <asp:Menu ID="Menu1" runat="server" Orientation="Horizontal" StaticMenuItemStyle-ItemSpacing="50px">
            <StaticMenuItemStyle BorderColor="Green" BorderStyle="Solid" BorderWidth="2px" HorizontalPadding="20px"/>
            <Items>
                <asp:MenuItem NavigateUrl="~/ComputingStudents.aspx" Text="Computing Students" Value="Computing Students"></asp:MenuItem>
                <asp:MenuItem NavigateUrl="~/CourseHistory.aspx" Text="Course History" Value="Course History"></asp:MenuItem>
            </Items>
        </asp:Menu>
        <br />
        <br />
        <div>
            <asp:ContentPlaceHolder ID="ContentPlaceHolder1" runat="server">
            </asp:ContentPlaceHolder>
        </div>
    </form>
</body>
</html>


content page

<%@ Page Title="" Language="C#" MasterPageFile="~/MyMaster.Master" AutoEventWireup="true" CodeBehind="CourseHistory.aspx.cs" Inherits="CodingTest2.CourseHistory" %>

<asp:Content ID="Content1" ContentPlaceHolderID="ContentPlaceHolderHead" runat="server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">

    <asp:DropDownList ID="DropDownStuID" runat="server" DataSourceID="SqlDataSourceStuIDs" DataTextField="stuid" DataValueField="stuid" onchange="ddlSelectID(this)">

    </asp:DropDownList>
    <br />
    <asp:SqlDataSource ID="SqlDataSourceStuIDs" runat="server" ConnectionString="<%$ ConnectionStrings:c432018fa01g1ConnectionString %>" SelectCommand="SELECT stuid from STUDENT WHERE major='CSC' OR
major='CIS';"></asp:SqlDataSource>
    <br />
    <asp:ListBox ID="ListBoxCourses" runat="server"></asp:ListBox>
    <br />
    <asp:Label ID="lblCourses" runat="server"></asp:Label>
    <br />
    <br />
    <asp:Label ID="lblErrorMessage" runat="server" ForeColor="Red"></asp:Label>
    <br />
</asp:Content>

JavaScript file

function ddlSelectID(ddl) {
    var lbl = document.getElementById('lblCourses');
    lbl.innerText = ddl.value;
}



javascript c# asp.net master-pages content
1个回答
0
投票
function ddlSelectID() {
var ddlReport = document.getElementById("<%=DropDownStuID.ClientID%>");
    var lbl = document.getElementById('<%=lblCourses.ClientID%>');
    lbl.innerText = ddlReport.options[ddlReport.selectedIndex].value;
}

1)此javascript函数需要在您的页面上调用。通常,这将在客户端上单击按钮时发生。 (OnClientClick方法)或更改下拉列表中的项目时绑定此函数。2)如上更改您的JavaScript函数。

© www.soinside.com 2019 - 2024. All rights reserved.