Jquery 发布站点时获取JS错误
发布网站时未定义获取:Jquery 发布站点时获取JS错误,jquery,asp.net-mvc,visual-studio,Jquery,Asp.net Mvc,Visual Studio,发布网站时未定义获取:Error:ReferenceError:。 尽管我在布局页面中添加了JQuery库,现在还在partialView上,它抱怨没有找到JQuery库 我是这样引用它的: <script src="~/Scripts/jquery-1.10.2.min.js"></script> 当我在本地运行该网站时,它运行良好,没有JS错误,但它一发布就开始抱怨。通常我会在问题中添加代码,但我不确定要添加什么代码。我只是想知道,发布站点时加载js文件的方式是
Error:ReferenceError:
。
尽管我在布局页面中添加了JQuery库,现在还在partialView上,它抱怨没有找到JQuery库
我是这样引用它的:
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
当我在本地运行该网站时,它运行良好,没有JS错误,但它一发布就开始抱怨。通常我会在问题中添加代码,但我不确定要添加什么代码。我只是想知道,发布站点时加载js文件的方式是否与本地运行时有所不同。有没有人经历过这样的错误
再想一想,我还是会尝试添加代码。投诉的代码如下:
(这是一个局部视图)
$(文档).ready(函数(){
$(“#滑块”).rhinoslider();
$(“sliderHolderQitoz”).toggle(“淡入淡出”,6000);
});
我的布局如下所示:
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>@ViewBag.Title</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script src="//netdna.bootstrapcdn.com/twitter-bootstrap/2.3.2/js/bootstrap.min.js"></script>
<link href="~/Content/rhinoslider-1.05.css" rel="stylesheet" />
<link href="~/Scripts/jquery-ui.min.css" rel="stylesheet" />
<script src="~/Scripts/jquery-ui.min.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.js"></script>
<script src="~/Scripts/jquery.unobtrusive-ajax.min.js"></script>
<script src="~/Scripts/OwnedScripts/InitializeUI.js"></script>
<script src="~/Scripts/OwnedScripts/Dialogs.js"></script>
<script src="~/Scripts/OwnedScripts/Misc.js"></script>
<script src="~/Scripts/ExtraScripts/rhinoslider-1.05.min.js"></script>
<script src="~/Scripts/ExtraScripts/rhinoslider-1.05.js"></script>
<script src="~/Scripts/ExtraScripts/mousewheel.js"></script>
<script src="~/Scripts/ExtraScripts/easing.js"></script>
@视图包。标题
@style.Render(“~/Content/css”)
@Scripts.Render(“~/bundles/modernizer”)
同样,在本地运行/debuggin时,一切正常,错误出现在发布后是否尝试手动检查“真实”路径?
在我看来,您在本地和服务器上有不同的相对路径
试着代替
使用标准HTML脚本,在本地和服务器上检查它。在花费了不现实的时间后,我最终发现问题在于站点无法找到:
\u ViewStart.cshtml
。这在本地运行时效果很好,但在部署网站时会出现问题。由于所有的脚本引用都放在:\u Layout.cshtml
中,所以我在页面开始时遇到了脚本错误。因此,解决方案是添加:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
在索引页的顶部,我们都很好
有趣的是,我们程序员竟然能在这么简单的解决方案上花费很多时间。但问题在于找到真正的原因/问题,以便能够应用简单的解决方案:D尝试使用MVC@Url.content您的确切意思是什么:尝试用标准HTML脚本替换。我不明白:)你是对的,我有点神志不清。在普通html和元素中使用“~”字符。只要我知道您只能在服务器端使用~作为路径的根,而您的浏览器无法解析它。尝试为标记使用标准uri。供参考:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}