无法将对象传递给onclick方法
JavaScript -- Unable to pass object to onclick method
我有一个图像,当它被点击时,我试图传递一个对象到onclick方法,但我得到一个错误:
missing ) after argument list
调试器控制台在第1行显示错误,与HTML doctype声明相同。
但是,当我传递一个字符串时,一切工作正常,方法被执行。
谁能告诉我我在这里错过了什么?var item = {test:"blah"};// throws error
var emptyString= "";//works fine
str = str + ' <img alt="" data-qtip="Submit Report" height="14px" width="14px" src="'+img+'" style="cursor:pointer" onclick="submitReport('+item+')"/>';
如果我传入空字符串,一切工作正常。
谢谢!
您应该使用JSON.stringify
函数对对象进行字符串化:
str = str + ' <img alt="" data-qtip="Submit Report" height="14px" width="14px" src="'+img+'" style="cursor:pointer" onclick="submitReport('+JSON.stringify(item)+')"/>';
你把两件事搞混了。你试着把一个对象放进一个字符串,那是不可能的。你必须对对象进行字符串化(例如,使其成为字符串),以便像这样传递它。
str = str + ' <img alt="" data-qtip="Submit Report" height="14px" width="14px" src="'+img+'" style="cursor:pointer" onclick="submitReport('+JSON.stringify(item)+')"/>';
要将字符串返回到submitReport()
中的对象,您需要解析它:
var obj = JSON.parse(stringifiedObject);
相关文章:
- 胸腺价值发送angularJS ng onclick方法
- 如何从该文本的 onclick 方法中更改 d3.js 文本输入
- 使用Javascript中的onclick方法
- 无法在onclick方法中传递参数
- 在onclick方法上创建get方法
- JSP和带有Onclick方法的JSTL
- Javascript,设置 onclick 方法语法
- ReactJS 从父组件的 onClick 方法更新对子组件的 ajax 调用
- 调用 onClick 方法之前的 ASP 警报文本
- JavaScript onclick方法,将其附加到所有按钮
- 将对象作为参数传递给手把模板中的onclick方法
- 应用于图像对象的onclick方法导致向“;否”;页
- JavaScript类属性在onclick方法中不可用
- 下拉菜单的onclick方法在chrome中不起作用
- Onclick方法使用JavaScript错误
- 如何在onclick方法上传递字符串
- 如何在asp.net中调用image按钮的onclick方法中的函数
- 如何绑定onclick方法与keydown方法
- 无法让onClick方法在JavaScript中工作
- Onclick方法不起作用