我有以下动态添加的p元素.封闭的div位于DOM中.我想用按钮删除p. div class="prime_ben"p class=”beneficiary”ADDED: John C Smith, Son button class="remove_ben” type="button"REMOVE/button/p/div 这里有很多关于如何
<div class="prime_ben"> <p class=”beneficiary”> ADDED: John C Smith, Son <button class="remove_ben” type="button">REMOVE</button> </p> </div>
这里有很多关于如何使用.on方法将click函数添加到动态添加元素(如我的示例中的按钮)的引用(以前的问题).但无法弄清楚如何让函数作用于父元素.我知道我可以将点击功能添加到p本身,只需点击p上的任意位置即可将其删除,但这不是我想要的.我只想要“删除”文本是一个点击删除按钮.
此代码单独删除按钮.
$('.prime_ben').on('click', 'button.remove_ben', function() { this.remove(); });
我想用这样的东西:
$('.prime_ben').on('click', 'button.remove_ben', function() { this.parent.remove(); });
我知道它不起作用,因为父p是未定义的(不在DOM中).有没有办法选择父元素或兄弟元素到使用.on方法选择的元素?
你快到了.您已正确附加委派事件,并且在执行删除按钮单击时存在父元素:$('.prime_ben').on('click', 'button.remove_ben', function() { $(this).parent().remove(); });