我有一个简单的问题: 我有一个函数将id存储在名为“view1”的数组中。当满足某个要求时,我希望这些id的onclick能够改变。我希望它们在单击时加载一个名为clickMem(id)的函数,并在函数中发送它们的id。 所以我用数组中的第一个id尝试了这个并且它不起作用,我做错了什么?
document.getElementById(view1[0]).onclick='clickMem('+view1[0]+');';
提前谢谢!
答案 0 :(得分:1)
使用setAttribute:
var new_onclick = 'clickMem('+view1[0]+')';
document.getElementById(view1[0]).setAttribute('onclick',new_onclick);
但请注意:
document.getElementById('buttonLED'+id).onclick = clickMem(view1[0]);
将元素的onclick属性设置为clickMem(view1[0])
的结果
该函数并将该函数返回的值赋给onclick
属性,这是您不想要的。
通过function(){clickMem(view1[0]);}
document.getElementById('buttonLED'+id).onclick = function(){clickMem(view1[0]);}
也可以。
答案 1 :(得分:0)
试试这个:
document.getElementById(view1[0]).onclick=function() {clickMem(view1[0]);}