EJS中按钮onClick无法调用函数的问题求助
问题排查与解决方法
核心问题是函数名大小写不匹配:
- 按钮的
onclick事件调用的是myFunction()(首字母F大写) - 但
/frontend.js中定义的函数是myfunction()(首字母f小写)
JavaScript是严格区分大小写的语言,这就导致点击按钮时浏览器找不到对应的函数,而页面加载时直接调用的是小写的函数名,所以能正常执行。
解决步骤
统一函数名的大小写即可,二选一:
- 修改
/frontend.js中的函数定义:
function myFunction(){ alert('hello') } myFunction()
- 或者修改按钮的
onclick属性:
<button onclick="myfunction()">Click me</button>
额外排查技巧
- 按F12打开浏览器控制台,查看Console标签的报错信息,这类调用失败通常会提示类似
"myFunction is not defined"的错误,能快速定位问题。 - 确认
script标签的引入路径正确(虽然当前页面加载能执行函数已说明路径没问题,但如果后续遇到类似问题,这是首要检查项)。
内容的提问来源于stack exchange,提问作者Zeronir
相关产品推荐
相关产品推荐

