[英]Assigning onclick event to global variables - javascript
我有许多班级为“ mypoll”的div。 这是我的js代码:
var mypoll=[];
$(document).ready(function (){
mypoll=document.getElementsByClassName("mypoll");
});
for(var t=0; t<mypoll.length; t++) {
mypoll[t].getElementsByClassName("deletePoll")[0].onclick=(function() {
var currentI = t;
return function() {
deletedMyPoll(currentI);
};
})();
}
function deletedMyPoll(i){
var a=document.getElementsByClassName("mypoll")[0].innerHTML;
alert(a);
}
我得到的错误是
cannot set property onclick of undefined.
我的项目上有完全相同的代码(它又大又复杂,我不能在这里全部张贴),但是它不起作用。
它可以在jsfiddle上运行。
javascript中的全局变量是否有问题? 我可以那样使用吗?
谢谢
如果您要使用jQuery,则最好使用它:
$(".mypoll").on('click', '.deletePoll', function () {
});
for循环在dom准备就绪之前运行。
$(document).ready(function (){
mypoll=document.getElementsByClassName("mypoll");
for(var t=0; t<mypoll.length; t++) {
mypoll[t].getElementsByClassName("deletePoll")[0].onclick=(function() {
var currentI = t;
return function() {
deletedMyPoll(currentI);
};
})();
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.