【问题标题】:External Javascript loading on Google Chrome, Not Firefox 4 (Error 400)在 Google Chrome 而非 Firefox 4 上加载外部 Javascript(错误 400)
【发布时间】:2011-05-15 19:07:07
【问题描述】:

我正在 ASP.NET Development Server 10.0.0.0 中开发一个应用程序,该应用程序使用我从当前工作页面引用的外部 javascript。也就是说,这是从根目录开始的文件层次结构:

  • js
    • jquery-1.5.min.js
  • ...
  • 学生
    • js
      • Course.js
      • Plan.js
      • (等)
    • ...
    • plan.aspx [当前工作页面]

在 plan.aspx 中,在页面主体(在标题之外),我对这些 javascript 页面进行了多次调用:

<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
 <script type="text/javascript" src="..\js\jquery-1.5.min.js"></script>
 <script type="text/javascript" src=".\js\HTMLTrees.js"></script>
 <script type="text/javascript" src=".\js\Course.js"></script>
 <script type="text/javascript" src=".\js\Schedule.js"></script>
 <script type="text/javascript" src=".\js\Plan.js"></script>
 ...
</asp:Content>

Google Chrome (11.08) 和 Internet Explorer 8 能够很好地找到文件并开始执行脚本。 Firefox 4 和以前的版本无法找到该文件,因为每个请求都会返回一个错误代码(400 - 错误请求)。

帮帮我?

【问题讨论】:

  • 让我猜猜:它与反斜杠有关
  • 就是这样。 应该是 script> 您会认为在向服务器发出请求时,会以相同的方式引用 Windows 中的文件路径。猜猜我从现在开始会坚持使用 Unix 文件路径格式
  • 那我就写出来作为后人的答案。 ;)
  • 那是因为它们不是文件路径,而是相对 URI。

标签: javascript asp.net html firefox google-chrome


【解决方案1】:

Firefox 将 URL 中的反斜杠编码为 %5C。除非您在服务器端进行了修复,否则它将无法正常工作。

标准规定对 URL 使用正斜杠,所以我想你应该将反斜杠更改为 URL 中的正斜杠。

【讨论】:

    猜你喜欢
    • 2012-01-29
    • 2013-08-16
    • 1970-01-01
    • 2019-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-09-19
    相关资源
    最近更新 更多