【发布时间】:2014-06-16 15:10:16
【问题描述】:
当从字符串创建对象时,是否可以将对象传递给 javascript?
我试过了,但它看起来不起作用:
var myobject = {name:"auto",color:"blue"};
var btn = "<button type='button' onclick='myfunc(" + myobject + ");'>Edit</button>";
如果我检查 onclick 事件,对象看起来像:[object Object]
【问题讨论】:
-
您可以这样做,但您需要将其编码为字符串。您可以为此使用
JSON.stringify()。然后,您需要为 HTML 转义(或直接设置属性值)。真的,不要做你正在做的事情。添加适当的事件处理程序并使您自己更轻松。如果元素上的数据更合适,还可以考虑使用data-*属性,然后您可以为所有按钮分配一个单击处理程序。 -
经验法则:在 JavaScript 中工作时,更喜欢 DOM 操作而不是字符串操作。
标签: javascript html object