【发布时间】:2017-10-27 09:18:49
【问题描述】:
我正在尝试将 jquery 文件捆绑到没有如下布局的视图上
<html>
<head>
@section Scripts{
<script src="@System.Web.Optimization.BundleTable.Bundles.ResolveBundleUrl("~/bundles/jquery")">
</script>
}
<script type="text/javascript">
$(document).ready(function () {
上面的包配置已经写好了,如下
bundles.Add(new ScriptBundle("~/bundles/jquery").Include(
"~/Scripts/jquery-{version}.js"));
每当我调用 document.ready 函数时,我都会看到 $ 未定义异常,这意味着脚本尚未加载。
当放置在同一共享文件夹下的 layout.cshtml 中时,相同的捆绑可以完美运行。我错过了什么吗?
【问题讨论】:
-
我想您的脚本顺序是错误的,即您在加载之前尝试使用 jquery。为什么要在布局中加载 jquery?每次都预先加载它更有意义
-
@Liam 我在这个页面中只需要 jquery,我正在使用那个包。
-
然后将您的脚本部分移至其他 javascript 导入的上方。要正确回答这个问题,我们需要看看你如何渲染
scripts和你的其他 js 文件 -
好的,展开代码。脚本在捆绑后开始。
-
另外,如果我使用普通脚本标签而不是捆绑来添加对 jquery 脚本文件的引用,事情似乎工作得很好。
标签: asp.net-mvc bundling-and-minification