javascript - 从HTML中取出JS代码来单独的js文件,导致错误

标签 javascript html

我将js函数插入到html中,现在我从HTML中取出JS代码以单独的js文件,这导致JS函数未定义错误?为什么?以及如何解决?

    @(Html.Kendo().Grid<Model>()
        .Name("grid")
        .Columns(columns =>
        {

            columns.Bound(p => p.Name);

        })

        .Events(ev =>
        {
            ev.DataBound("initMenus");

        })

    )
<script>
function initMenus(e) {
    $(".templateCell").each(function () {
        eval($(this).children("script").last().html());
    });
}
</script>

现在我将 js 函数分离到 test.js 中:

<script src="~/js/test.js"></script>

 @(Html.Kendo().Grid<Model>()
            .Name("grid")
            .Columns(columns =>
            {

                columns.Bound(p => p.Name);

            })

            .Events(ev =>
            {
                ev.DataBound("initMenus");

            })

        )

我的test.js

function initMenus(e) {
        $(".templateCell").each(function () {
            eval($(this).children("script").last().html());
        });
    }

我确信 test.js 的路径是正确的。

这里有错误: enter image description here

最佳答案

浏览器兑现

浏览器可能正在兑现 test.js 文件,请尝试向 .js 文件添加一些版本控制。

基本示例

<script src="~/js/test.js?v=1"></script>

然后每次更改 .js 文件时增加该值

按 F5 通常不会强制浏览器获取新的 .js 文件

关于javascript - 从HTML中取出JS代码来单独的js文件,导致错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43508507/

相关文章:

html - 如何在 Bootstrap 4 中将 anchor 样式设置为按钮?

html - 选择元素下的一些文本

css - 移动设备中的视频背景 : Responsive

html - 构建原型(prototype)时的浏览器错误

javascript - 单选按钮更改事件后未选中复选框

javascript - 重定向用户并始终确保整页加载/重新加载

javascript - 在 JavaScript 中连续遍历数组

javascript - 在 JavaScript 中的对象数组中查找数字的快速方法

javascript - 从多维数组中获取数组名称

javascript - 如何制作不同的菜单项下拉菜单