【解决方案】JavaScript &Jquery 中使用onclick()传递参数时出现变量未定义以及数字自增的情况

在使用js的onclick对方法进行传参数的时候,报错 Uncaught ReferenceError: XXX is not defined 如果出现这个错误的话,就F12(谷歌浏览器右键->检查)查看这个方法传参是否正确。

我的处理方式:
1.首先是定义一个变量,对这个变量进行赋值,但是这个问题还是依然的存在,于是百度进行搜索,然后没有搜索到解决方案,可能是我搜索引擎用的不太好,不能够解决现在我面临的问题。
2. 打印这个参数到控制台,发现能够打印,并不报错。再次传参还是发生错误,打印类型为String。
3. 传入单纯数字类型,发现传递的值和我打印的值不一样,发现自增的情况。

针对第一种第二种情况而言,是在onclick 点击事件触发时,传递参数是需要将变量使用双引号。比如:

解决方案出处

var name="张三";

var html="<div οnclick='chose(\" "+name + "\")'; >姓名</div>";

如果是在JSP里面的话,可以使用单引号更新后,查看html代码里面是否正确,然后在被调用的方法里面使用console.log()或者alert()打印出来。

对于第三个解决方案,其实就是和上面那个解决方案是一样的,但是问题数字是为什么会自增呢?

js传参:参数为长数字类型时,参数自动改为科学计数

应用场景:订单号ID商品ID 等等

解决方案:

在方法传递参数时添加  \' ' + 参数 + ' \ ' 变为字符串 解决,
追加div时: onclick=\"see("+ "\'" + 参数 + "\'" + ")\"

如果这篇文章对你有帮助的话,可以一键三连哦~

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值