lfkabb 2019-02-12 09:46 采纳率: 0%
浏览 1209

javascript 字符串拼接渲染的html元素,不能添加事件,为什么?哪位大神帮忙解答,感激不尽!

js字符串拼接:

'<p class="add"> <i class="icon iconfont icon2">&#xe60a;</i> &nbsp;<span class="nums"> 1 </span> &nbsp; <i class="icon iconfont icon1">&#xe63c;</i> </p>'

jquery 事件代码:

$(".add .icon1").bind("click",function(){ 
        alert("1");
        })

但是在浏览器中执行无效。

直接写在html中是有效的,但是这个需要获取数据再渲染。求哪位大神帮忙指点!

  • 写回答

3条回答 默认 最新

  • 天际的海浪 2019-02-12 19:15
    关注

    你用的是直接绑定事件的方式。这种方式必须要先把html元素添加到页面上之后,再绑定事件才有效。
    如果一定要先绑定事件,再把html元素添加到页面上,就要用委托式的绑定事件方式。

    $("body").on("click",".add .icon1",function(){ 
            alert("1");
    })
    
    评论

报告相同问题?

悬赏问题

  • ¥15 chaquopy python 安卓
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 CSS实现渐隐虚线框
  • ¥15 有没有帮写代码做实验仿真的
  • ¥30 vmware exsi重置后登不上
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题