append ile eklenen button click olayını dinleyemiyorum.
<script>
let creatediv = document.createElement('div');
Object.values(info).forEach((val,i) => {
creatediv.innerHTML = ".....";
});
element.append(creatediv);
</script>
Sayfa yenilendiğinde create div içine eklenen buton çalışıyor
ama innerHTML eklendikten sonra çalışmıyor.
Soru hatalı mı? 👎
Eğer sorunun kurallara aykırı olduğunu düşünüyorsanız lütfen bize bildirin!
Cevaplar (3)
imkanın olmadığı durumlarda kullanabilirsin bu yöntemi, onclick ekleyebiliyorsan zaten sorun yok :)
sayfaya sonradan eklenen içeriğe event eklemek için vanilla jsde bir tık uğraşmak gerekebiliyor, şu fonksiyon ile yapabilirsin
function live (eventType, elementQuerySelector, cb) {
document.addEventListener(eventType, function (event) {
var qs = document.querySelectorAll(elementQuerySelector);
if (qs) {
var el = event.target, index = -1;
while (el && ((index = Array.prototype.indexOf.call(qs, el)) === -1)) {
el = el.parentElement;
}
if (index > -1) {
cb.call(el, event);
}
}
});
}
live("click", "div.sonradan-eklenen", function (e) {
// ne istiyorsan
});