Befestigen Ereignis, um dynamische Elemente in javascript

Ich versuche zum einfügen von html-Daten dynamisch in eine Liste, die dynamisch erstellt, aber wenn ich versuche, an ein onclick-Ereignis für die Schaltfläche wird dynamisch erstellt, das event wird nicht gefeuert. Lösung wäre, wirklich zu schätzen.

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 werden Sie die Erstellung der html?
Ich würde sagen, das ist weil das element nicht existieren, wenn Sie versuchen zu befestigen, wird der Ereignis-listener. - haben Sie einen Blick auf dieses learn.jquery.com/events/event-delegation
Bewegen Sie Ihre addEventListener in den Ereignis-listener von btnSubmit

InformationsquelleAutor Manju | 2016-01-20

Schreibe einen Kommentar