You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

点击移除按钮删除对应循环生成的输入框及按钮功能失效求解

问题修复说明

你代码中存在以下几处需要修改的错误:

  • 新增按钮的变量名、父容器引用错误
    创建新增按钮时你定义的按钮变量为addierenButton、父容器变量为myParent2,但追加元素时变量名写错,导致新增按钮根本没有被正常插入到DOM中,删除时自然找不到对应元素。
    原错误行:
    myParent.appendChild(addButton);
    
    修改为:
    myParent2.appendChild(addierenButton);
    
  • 自定义删除函数名和原生方法冲突
    你命名的remove函数和DOM元素自带的原生remove()方法重名,调用时会出现上下文冲突导致功能异常。
    1. 先修改移除按钮的点击事件绑定:
    removeButton.setAttribute('onclick','removeGroup(this)');
    
    1. 再修改对应函数的定义,同时可以加可选链操作符避免元素不存在时的报错:
    function removeGroup(btn){
      const num = btn.id.replace("remove_btn_", "");
      const delInput= document.getElementById("InputNew-" + num);
      const delAdd= document.getElementById("add_btn_" + num);
      const delRemove= document.getElementById("remove_btn_" + num);
      delInput?.remove();
      delAdd?.remove();
      delRemove?.remove();
    }
    
  • (可选优化)循环变量改用块级作用域声明
    把循环开头的var i改为let i,避免var的函数作用域带来的闭包变量共享问题,降低后续功能扩展的隐患:
    for(let i = 0; i < arrayinput.length; i++){
      // 原有循环逻辑
    }
    

内容的提问来源于stack exchange,提问作者Jan P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 11:12:03