jQuery $(this).remove() funktioniert nicht nach append
Ich habe ein div mit class="tags"
mit einem vordefinierten Link.
<div class="tags">
<a href="#">myLink</a>
</div>
Und ich habe die Funktion zum entfernen des hyperlinks, wenn der Benutzer darauf klickt.
$('.tags a').click(function() {
$(this).remove();
return false;
});
Und diese arbeitet mit vordefinierten hyperlinks.
Wenn ich weitere links mit Hilfe von jQuery (nachdem die Seite geladen ist)
$('.tags').append('<a href="#">newLink</a>');
Funktion hyperlink entfernen (klicken Sie auf) nicht aufgerufen werden auf diese, zusätzlichen links. Wie man dieses Problem lösen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Haben Sie über die live-Funktion:
Weil Sie mit dem hinzufügen der links nach dem erstmaligen laden der standard-click-Ereignis wird nicht gebunden, um die dynamische links Hinzugefügt.
live()
wurde abgeschrieben, seit 1.7. Es ist ratsam,on()
von nun an. Der übersetzte Aufruf wäre$(document).on('click', '.tags a', function () { /* foo */ });
Ihre click-Ereignis nur an aktuelle dom-element nicht für künftige element.Wenn Sie möchten, fügen Sie diese Veranstaltung, um alle element gehören Zukunft haben, dann müssen Sie die Verwendung live-event in jquery.
http://jsfiddle.net/6cGvt/
live()
wurde abgeschrieben, seit 1.7. Es ist ratsam,on()
von nun an. Der übersetzte Aufruf wäre$(document).on('click', '.tags a', function () { /* foo */ });