简体   繁体   English

Javascript Vanilla - 如何在ajax内容中的元素上附加事件监听器?

[英]Javascript Vanilla - How to attach event listener on element inside ajax content?

If in Jquery we can simply delegate the event in <body> like this: 如果在Jquery中,我们可以简单地在<body>委托事件,如下所示:

$('body').on('click', 'a[data-method]', function () {
  // event action here
});

But how we do that in Vanilla Javascript? 但是我们如何在Vanilla Javascript中做到这一点?

Note: <a data-method=""> is created inside ajax content 注意: <a data-method="">是在ajax内容中创建的

Thanks. 谢谢。

You can add an event listener to body , and then check to see if the event.target.matches the desired selector: 您可以向body添加事件侦听器,然后检查event.target.matches所需的选择器:

 document.body.addEventListener('click', (event) => { if (!event.target.matches('a[data-method]')) return; console.log('click'); }); setTimeout(() => { const a = document.body.appendChild(document.createElement('a')); a.setAttribute('data-method', 'foo'); a.textContent = 'aaa'; }, 100); 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 Javascript:如何将相同的事件侦听器重新附加到重复出现的元素上? - Javascript : how to re-attach the same event listener to a element reppeared? 向 vanilla javascript 中尚不存在的元素添加事件侦听器 - Adding an event listener to an element that doesn't exist yet in vanilla javascript 将 javascript 事件附加到使用 AJAX 加载的内容 - Attach javascript event to content loaded with AJAX Javascript-如何将事件侦听器中的元素值与数组元素进行比较? - Javascript - How to compare the element value inside event listener to the the array element? 如何将事件监听器附加到javascript var - How to attach an event listener to a javascript var 如何将事件侦听器附加到本身已使用Javascript插入的元素上? (没有jQuery) - How can I attach an event listener to an element that has itself been inserted with Javascript? (without jQuery) 如何防止香草JavaScript中的事件侦听器重复? - How can I prevent duplication in event listener in vanilla javascript? Vanilla Javascript 如何在事件监听器上覆盖添加 function? - Vanilla Javascript how override added function on event listener? 如何使用dom id将原始JavaScript keyup侦听器附加到有角度的md-autocomplete输入? - How to attach a vanilla JavaScript keyup listener to an angular md-autocomplete input using the dom id? Vanilla Javascript:.forEach 循环未应用事件侦听器 - Vanilla Javascript: .forEach Loop Not Applying Event Listener
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM