我真的很困惑如何向 jquery 创建的元素添加点击事件。
现在,我生成这样的元素:
$.ajax(
params....
)
.done(function(item){
$.each(item, function(i, some){
a = '<p>some text</p>';
$(node).before(a);
}
});
我的问题是当我尝试向元素“p”添加点击事件时。如果我做:
$('p').on('click', 'p', function(){
alert('yai!');
});
什么都不显示。但是如果我这样做:
$.ajax(
params....
)
.done(function(item){
$.each(item, function(i, some){
a = '<p>some text</p>';
$(a).click(function(){
alert('yai!');
});
$(node).before(a);
}
});
它显示太多警报(相同数量的 p 元素)
我做错了什么?