转载--js对象无法当成参数传递
今天我碰到了这个问题一头雾水,明明记得对象是可以传参的啊。我使用了一款基于bootstrap的表格插件DataTables,想把行信息直接传给操作函数,方便编辑(此行信息是一个对象,按道理可以的啊),但是写出来后怎么也不执行,于是我用谷歌调试,过程如下。
在表格加载的时候执行上面的代码,把行信息传递给了editInfo函数,出来界面如下:
当点击编辑的时候,谷歌就报了这个错误:
我在网上百度过,大多是由于缺少分号,或双引号不正确造成的,但找了一遍并没有发现问题,又调试了一次发现editInfo函数根本没有执行,这我就找到了问题的源头(传参未能传成功)。于是我查看了网页加载后的样子。
<
上网百度了很多对象传参的问题,但都无解,只好请教我的好朋友外加大神小猪帮忙,他告诉我可以传字符串试试。于是就有了下面的改动:
但依旧不能执行编辑事件,发现被浏览器解析过后变成如下的样子:
双引号必须成对出现,这样当然不会执行事件了,最开始我想把full对象用escape编码,这样传递过去就是一个字符串,然后接受的时候反编码,不过小猪说大可不必这样麻烦,最终至修改了这个地方:
如此以来点编辑的时候就执行了。
原文链接:http://blog.csdn.net/shuai870081885/article/details/51283390
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步