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

Could not add click event on dynamically created anchor tag

我正在尝试在动态创建的 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>');
}

看看Fiddle

编辑已更新FiddleLink

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

$('#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;
});