原生javascript中,新生成的元素如何绑定事件

下面这段代码,点击按钮给ul添加了一个li,li中间有一个删除的按钮,页面中已有的删除按钮功能正常,但是新增的删除按钮删除不了,咋处理啊,求代码<inputtype="b... 下面这段代码,点击按钮给ul添加了一个li,li中间有一个删除的按钮,页面中已有的删除按钮功能正常,但是新增的删除按钮删除不了,咋处理啊,求代码

<input type="button" id="btn1" value="添加" />
<ul id="ul1">
<li>dfasdfa<a href="javascript:;">删除</a></li>
<li>dfasdfa<a href="javascript:;">删除</a></li>
<li>dfasdfa<a href="javascript:;">删除</a></li>
</ul>

<script type="text/javascript">
window.onload = function()
{
var oBtn = document.getElementById("btn1");
var oUl = document.getElementById("ul1");
var aA = oUl.getElementsByTagName("a");

oBtn.onclick = function(){
var oLi = document.createElement("li");
oLi.innerHTML = '11111111111<a href="javascript:;">删除</a>';
oUl.appendChild(oLi);
}

for(var i=0;i<aA.length;i++)
{
aA[i].onclick = function(){
oUl.removeChild(this.parentNode);
}
}
}
</script>
展开
 我来答
zhaoapk
推荐于2018-05-10 · TA获得超过3771个赞
知道大有可为答主
回答量:1343
采纳率:40%
帮助的人:1594万
展开全部
window.onload = function () {
    var oBtn = document.getElementById("btn1");
    var oUl = document.getElementById("ul1");
    var aA = oUl.getElementsByTagName("a");

    oBtn.onclick = function () {
        var oLi = document.createElement("li");
        oLi.innerHTML = '11111111111<a href="javascript:;">删除</a>';
        oUl.appendChild(oLi);
        // 在这里给新的a添加事件
        aA = oLi.getElementsByTagName("a");
        for (var i = 0; i < aA.length; i++) {
            aA[i].onclick = function () {
                oUl.removeChild(this.parentNode);
            }
        }
    }


    for (var i = 0; i < aA.length; i++) {
        aA[i].onclick = function () {
            oUl.removeChild(this.parentNode);
        }
    }
}
如同神一般菜鸟
2013-05-30 · TA获得超过633个赞
知道小有建树答主
回答量:589
采纳率:100%
帮助的人:348万
展开全部
介个,你的代码已经实现了,只不过顺序需要调整一下下

把代码:
var aA = oUl.getElementsByTagName("a");//代码行的第三句

移动到
//____________
oBtn.onclick = function(){
var oLi = document.createElement("li");
oLi.innerHTML = '11111111111<a href="javascript:;">删除</a>';
oUl.appendChild(oLi);
}
//___________
下面:
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友a19d193
2013-05-30 · TA获得超过3446个赞
知道大有可为答主
回答量:1464
采纳率:100%
帮助的人:1428万
展开全部
oLi.innerHTML = '11111111111<a href="javascript:;">删除</a>';变成

oLi.innerHTML = '11111111111<a href="javascript:;" onclick="document.getElementById("ul1")
.removeChild(this.parentNode)">删除</a>';

即可。记得采纳哦
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式