You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kendo UI的kendo.all.min.js放在_Layout时Grid组件失效求助

问题根因

你遇到的故障是jQuery重复加载导致Kendo组件扩展方法被覆盖:
查看你的_Layout.cshtml头部的脚本加载顺序:

  • 第一步加载Kendo CDN的jquery.min.js
  • 第二步加载kendo.all.min.js,此时Kendo会将所有组件方法(包括kendoGrid)挂载到当前已经加载的jQuery实例上
  • 第三步又加载了本地的~/lib/jquery/dist/jquery.js,新加载的jQuery会覆盖全局的$对象,之前挂载到旧jQuery实例上的Kendo方法全部丢失,所以调用kendoGrid时会报错无法执行。

解决方案

按如下步骤修改即可:

  1. 删除重复的jQuery引用:删掉_Layout.cshtml头部的如下代码,保证全局只加载一次jQuery:
<script src="~/lib/jquery/dist/jquery.js"></script>

如果你项目需要优先使用本地jQuery,可调整顺序为:先引本地jQuery,再引kendo.all.min.js,同时删掉Kendo CDN的jQuery引用,始终保证jQuery加载顺序在kendo.all.min.js之前。
2. (可选规范优化)将View页面中的Grid初始化脚本放到Scripts段落中,保证依赖脚本加载完成后再执行:
在View页面中修改脚本部分为:

@section Scripts {
<script type="text/javascript">
    var data = [{
        firstName: "Mauricio",
        lastName: "Silva",
        email: "mauricio@email.com"
    },
    {
        firstName: "Daniel",
        lastName: "Silva",
        email: "daniel@email.com"
    },
    {
        firstName: "Janaina",
        lastName: "Silva",
        email: "janaina@email.com"
    }];

    $("#grid").kendoGrid(
        { dataSource: data }
    );
</script>
}
  1. 清理浏览器缓存后重新测试即可恢复Grid正常加载。

内容的提问来源于stack exchange,提问作者Garota de Programas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 08:15:03