【发布时间】:2018-06-25 15:49:38
【问题描述】:
我有一个页面,其中一些 onclick 代码被添加到附加元素中,我想阻止 onclick 代码触发。
这是我尝试过的:
$(function() {
$('.container').append('<div class="appended" onclick="alert(\'DONT DISPLAY\')">CLICK ME</div>');
// Prevent onclick
$(document).on('click', '.appended', function (e) {
e.preventDefault();
return false;
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="container"></div>
不幸的是,这并没有阻止 onclick 的行为。
EDIT 应该提到这一点,但我无权访问将 onclick 事件添加到 HTML 的代码,但如果可能,我愿意删除该属性事后对附加元素执行此操作。
【问题讨论】:
-
同时添加
event.stopPropagation(),这样事情就不会冒泡了。 -
@nurdyguy 冒泡不是问题
标签: jquery append preventdefault