0

我正在单击按钮创建一个新的 div,在该 onclick 函数中,我正在向新创建的 div 添加一个单击事件,但它不起作用。

document.getElementById('blah').onclick = function(){
    var innerDiv = document.createElement("div");
    document.getElementById('container').appendChild(innerDiv);
innerDiv.onclick =createWorkFunction;
}
function createWorkFunction(e){
 alert();
}

谁能快速帮助我

4

3 回答 3

0
(function() {
    var oBlah = document.getElementById('blah');
    oBlah.addEventListener('click', function() {
        var innerDiv = document.createElement("div");
        document.getElementById('container').appendChild(innerDiv);
    }, false);
    innerDiv.addEventListener('click', function() {
        alert();
    }, false);
})();

这应该会有所帮助。

于 2013-09-21T14:52:58.370 回答
0

你的代码是正确的,但是你没有设置你的文本div(一个空的div不能被用户点击),试试这个:

document.getElementById('blah').onclick = function(){
    var innerDiv = document.createElement("div");
    innerDiv.innerHTML = 'This is a div'; // set it's text
    document.getElementById('container').appendChild(innerDiv);
    innerDiv.onclick = createWorkFunction;
}
function createWorkFunction(e){
    alert('this is some text');
}

也最好使用addEventListener

于 2013-09-21T14:06:15.223 回答
-1

尝试这个:

innerDiv.setAttribute("onclick","createWorkFunction()")   

function createWorkFunction(){
 alert("working");
}
于 2013-09-21T14:12:42.360 回答