无法在动态创建的锚标记上添加单击事件

Could not add click event on dynamically created anchor tag

本文关键字:添加 单击 事件 动态 创建      更新时间:2023-09-26

我试图在动态创建的anchor标签上注册click事件,但它不起作用。下面是代码

var location = 's';
$('#phone').on('click', 'a', function(event) {
  console.info('Anchor clicked!');
  event.preventDefault();
  return false;
});
for(var i = 0; i < 5; i++) {
  $("div#phone").append('<ul><a href="#" id = "' + location + '"> rajeev </a></ul>');
}

看一看小提琴

编辑更新小提琴链接

您的代码运行良好,检查您的浏览器控制台或更改控制台警报:

$('#phone').on('click', 'a', function(event) {
  alert('Anchor clicked!');
  event.preventDefault();
  return false;
});

如果您将代码放在循环之后,则可以正常工作。

https://jsfiddle.net/3oy472om/

for(var i = 0; i < 5; i++) {
  $("div#phone").append('<ul><a href="#" id = "' + location + '"> rajeev </a></ul>');
}
$('#phone a').on('click', function(event) {
  alert('Anchor clicked!');
  event.preventDefault();
  return false;
});