【发布时间】:2020-02-27 16:59:28
【问题描述】:
我正在尝试加载一个剑道网格,我的jQuery 文件中有一个方法来初始化它,但我的问题是由于某种原因我的grid.js 文件没有被加载到页面上。
引用grid.js文件的布局文件:
<script defer src="~/js/grid.js" asp-append-version="true"></script>
@section Scripts {
@RenderSection("Scripts", false)
}
我的视图引用了布局文件:
@{
Layout = "~/Views/Shared/_LayoutList.cshtml";
}
当我使用开发工具检查源中的脚本时,找不到它,但正在加载引用其他位置的其他 .js 文件。
更新
我的_LayoutList.cshtml 的布局来自_Layout.cshtml。我测试了将<script> 标记移动到_Layout.cshtml 并且grid.js 文件终于在我的源中。我显然不能让加载的每个页面都有grid.js 文件,所以我仍然需要弄清楚为什么_LayoutList.cshtml 没有使用grid.js
编辑:
我尝试从我的<script> 标签中删除defer,使其成为<script src="~/js/grid.js" asp-append-version="true"></script>
不幸的是,这并没有解决问题。
我还检查了控制台是否有错误,但没有发现任何错误。
编辑:
我尝试以隐身模式打开窗口以避免页面的缓存版本。没有解决我的问题。
【问题讨论】:
-
尝试删除
defer。取决于您的页面的结构,这可能会导致比它解决的问题更多的问题。如果失败,请检查控制台是否有错误 -
@RoryMcCrossan,刚刚测试过,不幸的是没有解决我的问题。检查控制台是否有错误,不存在。
-
在 devtools 中,您可以检查网络选项卡并查看对
grid.js文件的请求发生了什么 -
@rbansal 对于网络选项卡中的脚本,我在页面上看到了我调用的其他脚本,但没有看到
grid.js文件。 -
你的意思是没有调用网络中的文件获取?
标签: javascript c# jquery asp.net-core kendo-grid