我得到;“未定义函数”;当我将Javascript函数从内联代码移动到单独的js文件时

我得到;“未定义函数”;当我将Javascript函数从内联代码移动到单独的js文件时,javascript,html,laravel,Javascript,Html,Laravel,我正试图让一件非常简单的事情起作用: <!DOCTYPE html> <html lang="en"> <head> </head> <body> <script src="js/test.js" type="text/js"></script> <button onclick="test()" type="submit">Test</button> </body> </

我正试图让一件非常简单的事情起作用:

<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
<script src="js/test.js" type="text/js"></script>
<button onclick="test()" type="submit">Test</button>
</body>
</html>
打开页面并单击按钮时,不会发生任何事情,我可以在控制台中看到:

Uncaught ReferenceError: test is not defined
    at HTMLButtonElement.onclick (test:7)
我已尝试将脚本导入移动到按钮上方或下方,或标题中。 我尝试在js文件中使用“window.setlocale=function”。 我试图在测试方法中不加任何东西。 我用JSLint检查了错误(没有错误)

当我检查源代码时,我可以看到js文件,当我点击它时,浏览器就会打开它

我能让Javascript工作的唯一方法是内联编写它

也许问题出在我的环境上

为了运行它,我使用了一个Apache服务器,它被配置为在localhost:8077上提供服务。到目前为止我工作得很好。 我使用Laravel7.10,PHP7.4。。。工作很好。为了运行它,我创建了一个简单的路由,它显示了上面复制/粘贴的HTML内容的视图(一个简单的index.blade.php)。它在“”上显示良好,没有问题

我也试着使用拉威尔符号

<script src="{{ asset('js/test.js') }}" type="text/js"></script>

但它给出了同样的结果

我还激活了PHP调试栏(一个Laravel插件),它没有显示任何错误。视图已正确加载和显示

此外,我使用PHPStorm,它不会检测到任何问题


已经两天了,我无法让这个看似非常基本的东西正常工作,请帮助我m(_u)m

您可以尝试将脚本标记添加到标题标记。像这样



您可以尝试将脚本标记添加到标题标记。像这样



尝试删除js/test.js中的函数名

function() {
    alert("test");
}

尝试删除js/test.js中的函数名

function() {
    alert("test");
}

请在核心文件的标题部分添加js文件作为引用。外部引用。

请在核心文件的标题部分添加js文件作为引用。外部引用。

您的脚本类型错误。在
script
元素中使用
application/javascript
,使您的javascript正常工作,或者最好删除
type
属性,让浏览器自动检测类型:

<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
    <script src="js/test.js" type="application/javascript"></script>
    <button onclick="test()" type="submit">Test</button>
</body>
</html>

您的脚本类型错误。在
script
元素中使用
application/javascript
,使您的javascript正常工作,或者最好删除
type
属性,让浏览器自动检测类型:

<!DOCTYPE html>
<html lang="en">
<head>
</head>
<body>
    <script src="js/test.js" type="application/javascript"></script>
    <button onclick="test()" type="submit">Test</button>
</body>
</html>

我试过了,尽管IDE警告我Javascript错误,但它不起作用。我试过了,尽管IDE警告我Javascript错误,但它不起作用。是的,我确认了路径是正确的,我可以单击路径(从html源代码)并在浏览器中显示我的js文件的内容。是的,我确认了路径是正确的,我可以点击路径(从html源代码)并看到我的js文件的内容显示在浏览器中。非常感谢你,你救了我一天!!当我从默认欢迎页面上的默认Laravel app.js导入复制粘贴时,出现了这种类型。。。复制粘贴是危险的,就是这样。非常感谢你,你救了我一天!!当我从默认欢迎页面上的默认Laravel app.js导入复制粘贴时,出现了这种类型。。。复制粘贴是危险的。