链接插入后限制单击事件

时间:2013-12-12 09:45:41

标签: jquery

动态插入链接后如下:

$('#p_id').html('<a class="edit">Link</a>');

触发以下点击事件:

$('.edit').click(function(){
    alert('I only want this event to be triggered on user interaction, NOT on creation.');
});

只有在用户实际点击链接时触发此事件的解决方案是什么,而不是在动态创建时触发?

3 个答案:

答案 0 :(得分:0)

对于动态创建的元素,您可以使用on委托事件

 $('#p_id').on('click','.edit',function(){
    alert('I only want this event to be triggered on user interaction, NOT on creation.');
 });
  

解决方案仅在用户实际点击链接时触发此事件,而不是在动态创建时触发

只有当有人点击选择器元素时才会触发click事件..无论是否动态创建都无关紧要。除非您使用trigger()

,否则它本身不会触发

答案 1 :(得分:0)

尝试:

$('#p_id').on('click', '.edit', function(){
    alert('I only want this event to be triggered on user interaction, NOT on creation.');
});

此表示法允许修改父母的内容。

答案 2 :(得分:0)

.click(function() {})

只是

的快捷方式
.on('click', function() {})

所以你的代码应该可行。 可能是你正在打电话

$('.edit').click()  // <-- without arguments!

某处?这种表示法会触发点击事件。