【问题标题】:js file path is correct but it cant be loadedjs文件路径正确但无法加载
【发布时间】:2012-05-10 08:05:32
【问题描述】:

我正在使用 ASP.Net 动态数据。我的 site.master 页面中有以下行。

<script src="../Scripts/jquery-ui-1.8.20.custom.min.js" type="text/javascript"></script>

路径正确且文件存在。但是当我加载页面时,我可以在 firebug 的 Net 面板中看到它找不到该文件。错误消息是“404 未找到”

【问题讨论】:

  • 尽量避免路径中出现大写字母(即重命名文件夹)。您是否为您的网站设置了基本网址?
  • @OptimusCrime 区分大小写在这里不是问题
  • ' 错误消息是“404 Not Found”' - 这意味着路径不正确,从浏览器的角度来看,这是唯一的观点很重要。

标签: javascript asp.net asp.net-dynamic-data


【解决方案1】:

方法 - 1

您应该按照以下方式修改代码...

  1. ~/Scripts/jquery-ui-1.8.20.custom.min.js
  2. "&lt;%#ResolveUrl("~/Scripts/jquery-ui-1.8.20.custom.min.js")%&gt;"

在第一种情况下,将 .. 替换为 ~

方法 - 2

或者,右键单击页面并选择View Source。单击您的脚本文件的链接并检查它是否导航到您的实际脚本文件?否则进行上述必要的更改。

【讨论】:

    【解决方案2】:

    我不相信你的网址:)

    使用:

    <script src='ResolveUrl("~/Scripts/jquery-ui-1.8.20.custom.min.js")' type="text/javascript"></script>
    

    另外,请验证 - 在加载此行之前加载 jQuery.js。

    【讨论】:

    • jquery.js 文件也出现此错误。相信我。路径是正确的。 :)
    • 有些奇怪。我正在使用 Visual Studio 2010。当我停止调试并重新启动时,我收到此错误。
    • 没有罗伊。我没有改变路径。我正在使用 ASP.NET 动态数据。我在 Default.aspx 页面中收到错误。但是当我转到其他页面时它可以工作。
    【解决方案3】:

    当你在一个url的开头使用../时,它是以浏览器的当前url为基础。因此,当您位于站点根目录的下一级目录时,该 url 有效,如下所示:

    http://myserver:myport/myvirtualdir/somedir/somepage.aspx

    或者这个:

    http://myserver:myport/myvirtualdir/somedir/(使用默认页面或视图)

    然后,浏览器会加载以下脚本:

    http://myserver:myport/myvirtualdir/Scripts/jquery-ui-1.8.20.custom.min.js

    但如果您位于任何其他目录深度,浏览器将使用错误的脚本 URL。就像您在根默认页面一样:

    http://myserver:myport/myvirtualdir/Default.aspx

    然后浏览器会尝试从错误的目录加载脚本:

    http://myserver:myport/Scripts/jquery-ui-1.8.20.custom.min.js

    这就是为什么您需要解析服务器端的 url,就像这里有几个人已经说过的那样。这将为浏览器提供脚本的工作 url。文件路径和url是有区别的。

    您收到 404 的事实意味着浏览器试图访问的网址根本不正确,从浏览器的角度来看,这实际上是唯一的观点这是有效的,即使你,开发者,确信你做对了......

    <script src="<%#ResolveUrl("~/Scripts/jquery-ui-1.8.20.custom.min.js")%>"></script>
    

    【讨论】:

      【解决方案4】:

      正如 Royi 所说,请确保在拥有 jquery-ui.js 之前拥有 jquery.js

      <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script>
      <script src="Scripts/jquery-ui-1.8.20.custom.min.js" type="text/javascript"></script>
      

      这里有一个提示。打开 site.Master 设计器,然后将 .js 文件从解决方案资源管理器拖放到设计器中。它会为你创建路径。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-09-05
        • 1970-01-01
        • 2023-04-09
        • 2014-12-17
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多