coodnood 2022-10-31 16:14 采纳率: 100%
浏览 11
已结题

为什么在这段代码中a标签被创建了,但是不会被下面创建的选择器所检测到?

为什么在这段代码中a标签被创建了,但是不会被下面创建的选择器所检测到?

  bbtn.onclick = function() {
        let lis = document.createElement('li')
        lis.innerHTML = text.value + <a href = 'javascript:;'> 删除 </a>      //这里貌似网站显示不出a标签所以没加引号
        text.value = ''
        div.insertBefore(lis, div.children[0])
    }
    //创建a的选择器
    let as = document.querySelectorAll('a')

    for (let i = 0; i < as.length; i++) {
        as[i].onclick = function() {
            div.removeChild(this.parentNode)
            console.log(1);
        }
    }
  • 写回答

2条回答 默认 最新

  • 爱音斯坦牛 优质创作者: 编程框架技术领域 2022-10-31 16:25
    关注

    把后面的选择器以及循环代码都放到那个点击事件里面,你创建的这个元素,只有在点击之后才创建呀,而你没在点击事件里的8-15行的代码页面加载就执行了,此时a元素还么创建呢,当然获取不到。
    你写的这个代码逻辑和我写的案例差不多,请看一下:https://blog.csdn.net/qq_57421630/article/details/124222167
    有帮助的话采纳一下哦!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 11月8日
  • 已采纳回答 10月31日
  • 修改了问题 10月31日
  • 创建了问题 10月31日