如下面的例子,使用add方法创建的button标签是添加不了click事件的
<html>
<head>
</head>
<body>
<p class="pWrap">这是一个段落。
<button class="btn">按钮</button>
</p>
<button onclick="add()">add</button>
</body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$(".btn").on("click", function(){
alert(1)
});
function add() {
$('.pWrap').append('<button class="btn">按钮</button>')
}
</script>
</html>
解决办法,给父级添加事件 on传第二个参数,也即该元素的选择器
<html>
<head>
</head>
<body>
<p class="pWrap">这是一个段落。
<button class="btn">按钮</button>
</p>
<button onclick="add()">add</button>
</body>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>
$(".pWrap").on("click", '.btn',function(){
alert(1)
});
function add() {
$('.pWrap').append('<button class="btn">按钮</button>')
}
</script>
</html>