我有一个创建几个按钮的功能。问题是onclick属性不起作用。如何在JavaScript中使用此属性?
function querySuccess(tx, results) {
var len = results.rows.length;
for (var i=0; i<len; i++){
var name = results.rows.item(i).name;
var button = document.createElement("button");
button.className = "buttons";
button.value = name;
button.onclick = function() {
alert("assa");
};
var listIt = document.createElement("li");
listIt.className = "item";
listIt.appendChild(button);
var favs = document.getElementById("favs");
favs.appendChild(listIt);
}
}
答案 0 :(得分:1)
正确的方法是调用addEventListener(在Mozilla / webkit浏览器的情况下)或attachEvent(IE浏览器)。
function createButton(){
var btn = document.createElement('button');
btn.innerHTML = 'Click Me';
if(btn.addEventListener)
btn.addEventListener('click',function(){
alert('hello');
});
else
btn.attachEvent('click',function(){ alert('hello'); });
document.body.appendChild(btn);
}
编辑:检查以下链接以获得更通用的实施:https://gist.github.com/eduardocereto/955642