2016-05-18 13 views
1

Ich habe Probleme beim Erstellen eines dynamischen Formulars, bei dem ein Benutzer ein Textfeld hinzufügen und entfernen kann. Die Funktionalität zum Hinzufügen eines zusätzlichen Feldes funktioniert gut, aber das Entfernen des Feldes scheint einfach nicht zu funktionieren.Entfernen eines übergeordneten Elements beim Klicken mit jQuery

Mein html ist:

<div class="formItem" id="members"> 
    <label for="workgroup">Add Members:</label> 
    <br /> 
    <a href="#" id="addMember">Add another member</a> 
    <p> 
    <input type="text" name="members[]" placeholder="Enter email" autocomplete="off" /> 
    </p> 
</div> 

Mein JS:

$('#addMember').on('click', function() { 
    $('<p><input type="text" name="members[]" placeholder="Enter email" autocomplete="off" /><a href="#" id="removeMember">Remove</a></p>').appendTo('#members'); 
    return false; 
}); 

$('#removeMember').on('click', function() { 
    $(this).parent().remove(); 
}); 

Antwort

3

Sie fügen den Klick-Listener, bevor das Element tatsächlich zu schaffen, zu verwenden:

$('#members').on('click', '#removeMember', function() { 
    $(this).parent().remove(); 
}); 

diese Beispiele sehen http://api.jquery.com/on/#entry-examples

+0

Das funktioniert :) Dank –

+0

Sie sind willkommen;) – Webinan

1

versuchen Sie es mit dieser

$(document).on('click','#removeMember', function() { 
    $(this).parent().remove(); 
}); 
+0

es funktioniert :) Danke –

Verwandte Themen