Ich versuche, HTML-Daten dynamisch in eine Liste, die dynamisch erstellt wird, einzufügen, aber wenn ich ein Onclick-Ereignis für die Schaltfläche anhängen, die dynamisch erstellt wird, wird das Ereignis nicht ausgelöst. Lösung würde wirklich geschätzt werden.Ereignis an dynamische Elemente in Javascript anfügen
Javascript-Code:
document.addEventListener('DOMContentLoaded', function() {
document.getElementById('btnSubmit').addEventListener('click', function() {
var name = document.getElementById('txtName').value;
var mobile = document.getElementById('txtMobile').value;
var html = '<ul>';
for (i = 0; i < 5; i++) {
html = html + '<li>' + name + i + '</li>';
}
html = html + '</ul>';
html = html + '<input type="button" value="prepend" id="btnPrepend" />';
document.getElementsByTagName('form')[0].insertAdjacentHTML('afterend', html);
});
document.getElementById('btnPrepend').addEventListener('click', function() {
var html = '<li>Prepending data</li>';
document.getElementsByTagName('ul')[0].insertAdjacentHTML('afterbegin', html);
});
});
HTML-Code:
<form>
<div class="control">
<label>Name</label>
<input id="txtName" name="txtName" type="text" />
</div>
<div class="control">
<label>Mobile</label>
<input id="txtMobile" type="text" />
</div>
<div class="control">
<input id="btnSubmit" type="button" value="submit" />
</div>
</form>
Wie schaffen Sie den HTML lesen kann? – jim0thy
Ich würde sagen, dass das Element nicht vorhanden ist, wenn Sie versuchen, den Ereignislistener anzuhängen. - Werfen Sie einen Blick auf diese https://learn.jquery.com/events/event-delegation/ – Craicerjack
Verschieben Sie Ihren addEventListener in den Event-Listener von btnSubmit – slebetman