在服务器上发布后无法加载jQuery和用户定义js文件

时间:2014-06-11 04:00:06

标签: jquery css iis-7.5 web-deployment

我使用jQuery开发了一个应用程序。这个应用程序在我的开发机器上工作正常。在服务器上发布此应用程序后,由于路径问题,jQuery无法正常工作。

   <script language="javascript" type="text/javascript" src='<%=ResolveClientUrl("~/scripts/jQueryv2.0.3.js") %>'></script>
 <%-- <link rel="stylesheet" type="text/css" href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.2/themes/redmond/jquery-ui.css" />--%>
<link rel="stylesheet" type="text/css" href="css/jquery-ui.css" />
<link rel="stylesheet" type="text/css" href="css/ui.jqgrid.css" />
<link rel="stylesheet" type="text/css" href="css/common.css" />
<link rel="stylesheet" type="text/css" href="css/uploadfile.css" />
<link rel="stylesheet" type="text/css" href="css/jquery.plupload.queue.css" />
<script type="text/javascript" src='<%=ResolveClientUrl("~/scripts/jquery-ui.js") %>'></script>
<script type="text/javascript" src='<%=ResolveClientUrl("~/scripts/grid.locale-en.js") %>'></script>
<script type="text/javascript" src='<%=ResolveClientUrl("~/scripts/jquery.jqGrid.min.js") %>'></script>
<script type="text/javascript" src='<%=ResolveClientUrl("~/scripts/common.js") %>'></script>
<script type="text/javascript" src='<%=ResolveClientUrl("~/scripts/jquery.uploadfile.min.js") %>'></script>
<script type="text/javascript" src='<%=ResolveClientUrl("~/scripts/ServiceCall.js") %>'></script>
<script type="text/javascript" src='<%=ResolveClientUrl("~/scripts/plupload.full.min.js") %>'></script>
<script type="text/javascript" src='<%=ResolveClientUrl("~/scripts/moxie.js") %>'></script>
<script type="text/javascript" src='<%=ResolveClientUrl("~/scripts/jquery.plupload.queue.js") %>'></script>

请参阅以下截图。

enter image description here

我的网址是http://somedomain.com/supportticket/default.aspx

在查看详细视图后,我发现路径是不同的。 调试器中的路径:http://somedomain.com/scripts/jquery.x.x.js / http://somedomain.com/css/common.css,预计为:http://somedomain.com/supportticket/scripts/jquery.x.x.jshttp://somedomain.com/supportticket/css/common.css

同样也发生在CSS上。

1 个答案:

答案 0 :(得分:1)

为什么不像这样编写css / js文件夹的完整路径

<script src="/path/to/scriptfolder/filename.js"></script>
<link rel="stylesheet" type="text/css" src="/path/to/cssfolder/filename.css"/>

其中前面的/表示文件夹位于根目录中,或者使用

<script src="../script/filename.js"></script>
<link rel="stylesheet" type="text/css" src="../css/filename.css"/>

其中../表示浏览器应该从当前目录上一级目录中请求文件

使用示例

例如,如果您的网页是www.example.com,而您的目录是这样的

-/
  -home/
  -contactus/
    -supportticket/
      -Default.aspx
      -script/
        -script.js
      -css/
        -style.css

然后从www.example.com/contactus/supportticket/Default.aspx调用脚本,然后就可以像这样编写

完整路径:

<script type="text/javascript" src="/contactus/supportticket/script/script.js"></script>

或当前页面的相对路径:

<script type="text/javascript" src="../script/script.js></script>

应与

相等
<script type="text/javascript" src="<%=ResolveClientUrl("~/script/script.js") %>"></script>