onclick点击事件报错Uncaught ReferenceError: xxx is not defined

版权声明:本篇博客内容来源于本人亲身经历,属于本人原创,转载请注明出处,感谢分享~~ https://blog.csdn.net/hl_qianduan/article/details/86512856

有时候会直接在html中写onclick事件

我认为一般人是不会将onclick写错的,简单写一个例子,就是onclick=“方法名”

<div onclick="save()"></div>

但是今天我遇到一个问题,在js中写的方法调不到,啊哈,有点意思

有人说原因是方法写的格式不对

比如

//正确的是
save=function(){}
//错误的
var save=function(){}
function save(){}

不好意思,在下一直都是最后一种写法 ,pass

网上搜了搜,有这么几种情况:

1、在函数中写的方法 (也是我所犯的错误)

 $(function () {
        function save() {
            
        }
    })

 原因:save()他不是全局的方法了,onclick自然找不到他

解决方案:将save()设置为全局的

$(function () {
        window.save= function () {
            
        }
    })

2、方法名冲突——与关键词冲突(已存在的关键词)

3、方法名冲突——与变量名冲突(已定义的变量名)

4、方法名冲突……

解决方案:换一个方法名

猜你喜欢

转载自blog.csdn.net/hl_qianduan/article/details/86512856