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

jQuery中append动态新增的按钮点击事件无法触发该如何解决?

问题根因

直接调用$(".create-user").on("click", function(e) {})时,jQuery只会给代码执行瞬间已经存在于DOM树中的.create-user元素绑定事件,后续通过load、append动态插入的同类型元素不会被自动绑定,因此点击无响应。

解决方案

不用修改append逻辑,也不用反复绑定事件,改用事件委托写法即可,把事件绑定到不会被动态替换的父级元素上,由父级捕获事件后匹配触发事件的子元素:

  • 找到动态元素(也就是.create-user按钮)的最近一级静态父容器,你这里的#adresscontainer就是合适的选择,它是load方法的挂载容器,页面初始加载时就存在,不会被动态删除。
  • 把原来的事件绑定代码替换为如下写法:
$("#adresscontainer").on("click", ".create-user", function(e) {
  // 此处保留你原来的事件处理逻辑即可,不需要修改
})
额外注意项

你当前的append代码存在id重复问题:你向#inneradressbox插入的新div也声明了id='inneradressbox',同一页面内id必须唯一,会导致后续DOM选择、操作异常,建议修改新增元素的id或者直接移除重复的id声明。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 04:48:00