存储'this'对象中的onclick属性
store the 'this' object in an onclick attribute
我最终想要检索下面示例脚本的innerHTML (html将放在数据库中)。它还必须包括onclick事件。但是,在生成的HTML中没有可用的onclick事件。
<html>
</head>
<script>
function test() {
this.goodbye="goodbye!";
this.elem=document.createElement('div');
this.elem.style.border='1px solid #888888';
this.elem.textContent="hello";
this.elem.style.cursor='pointer';
var that=this;
this.elem.onclick=function(){that.say_goodbye();}
document.getElementsByTagName('body')[0].appendChild(this.elem);
}
test.prototype.say_goodbye=function(blockid) {
this.elem.textContent=this.goodbye;
}
</script>
</head>
<body>
<script>var obj = new test();</script>
<a href="javascript:alert(obj.elem.outerHTML);">get html</a>
</body>
</html>
重要行如下:
this.elem.onclick=function(){that.say_goodbye();}
我尝试添加它作为属性,如:
this.elem.setAttribute('onclick',that.say_goodbye.bind(that));
但是它不起作用。当我点击给定代码中的链接时,浏览器会发出警告:
<div> onclick="function(){[native code]}" ..... </div>
在这种情况下,HTML现在有一个'onclick'事件,但包含'[native code]'作为动作。
谁知道如何使代码工作?
你得到这个的原因是属性值总是文本,你正试图把对象放入其中(函数是对象)。这种情况下你应该用这个。
相关文章:
- 如何通过它瞄准javascript元素's的onclick属性
- 如何在循环中设置onclick属性
- 具有多个功能的Onclick属性
- 使用 javascript 禁用 onclick 属性
- 在单击onclick属性后的按钮时执行f:setPropertyActionListener
- 如何在Rails表单标记中获取onclick属性
- 在django帮助文本字段中放置带有onClick属性的链接
- 创建选项onClick属性
- $(this) 在 onclick 属性中不起作用
- 如何在asp.net图像控件中使用OnClick属性来制作图像库
- 将.onclick属性中的文本替换为javascript
- 我可以't获取单选按钮上的onclick属性以执行javascript函数
- 为什么onclick属性不起作用
- 来自jquery的.append中img标记中的onclick属性
- javascript函数和html onclick属性
- 未调用通过 onclick 属性分配的处理程序
- onclick属性的引号过多的问题 - jQuery,HTML
- 使用 ajax 更改 onClick 属性不会触发新事件
- 在 onClick 属性中声明变量,并在 onClick 中使用多个命令
- 在输入表单标记中使用 onclick 属性时出现 JavaScript 未捕获的引用错误