Путь не может получить доступ к файлам css или js в корневом каталоге asp.net
Я не могу получить правильный путь к файлу CSS или JS, когда пытаюсь получить к ним доступ из подпапки en/Default.aspx
файл.
У меня следующая структура папок
Default.aspx
en/Default.aspx
en/MasterPage.master
ar/Default.aspx
ar/MasterPage.master
scripts/slider/script.js
styles/slider-en.css
scripts/slider/jquery.easing.js
Код в en/Default.aspx
файл
<%@ Page Title="" Language="C#" MasterPageFile="~/en/MasterPage.master" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Default" %>
<%@ Register Src="~/en/UserControls/ucSliderHP.ascx" TagName="ucSlider" TagPrefix="uc"%>
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server"></asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server">
<script src="../scripts/slider/jquery.easing.js" type="text/javascript"></script>
<script src="../scripts/slider/script.js" type="text/javascript"></script>
<link href="<%= Page.ResolveUrl("./styles/slider-en.css") %>" rel="stylesheet" type="text/css" />
<div id="content-container-750">
<!-- Slider -->
<!-- Sidebar -->
<div id="sidebar-container-240"></div>
<!-- Sidebar -->
<div id="Slider-Wrapper-750x300">
<uc:ucSlider ID="NewsSlider" runat="server" />
</div>
<!-- Slider -->
<!-- Banner -->
<div id="content-Banner-750x100HP">
</div>
<!-- Banner -->
<!-- Article -->
<div id="article-wrapperHP">
</div>
<!-- Article -->
</div>
</asp:Content>
Когда я использую ../
путь всегда возвращает путь как http://localhost:49831/en/scripts/slider/script.js
и когда я использую `Page.ResolveURL или ResolveURL, он возвращает мне путь как
http://localhost:49831/website/en/Default.aspx?language=en-us&issue=5
Я не уверен, что мне делать, я пытался ../../
также это не работает либо
3 ответа
You can Use
/scripts/slider/jquery.easing.js
<script src="/scripts/slider/jquery.easing.js" type="text/javascript"></script>
"/"
Значит рут.
Попробуйте использовать ResolveUrl:
<script src="<%=ResolveUrl("~/scripts/slider/jquery.easing.js")%>" type="text/javascript"></script>
вместо
<script src="../scripts/slider/jquery.easing.js" type="text/javascript"></script>
Вы также можете добавить тильду (~
) а также runat="server"
чтобы получить ASP .NET для разрешения URL на основе корня.
например
<link href='~/styles/slider-en.css' rel="stylesheet" type="text/css" runat="server"/>