Stefanie M.: Problem mit Funktionsaufruf nach DOM-Manipulation

Beitrag lesen

Hi,

LinkRemove ();

Tipp: gib Deinen Funktionen Namen, die tatsächlich das beschreiben, was die Funktion tut. Ds trägt wesentlich zum Verständnis bei. Diese Funktion hier entfernt ja nicht den Link, sondern setzt nur das Event, dass bei Click den Link entfernen soll. Besser wäre also wohl etwas wie "AddRemoveLinkEventFkt" o.ä.

// DOM-Element entfernen und glob. Variable -=1
var LinkRemove = function () {
$('button.removeLink').click(function() {
console.log('-');
LINKS_ANZAHL-=1;
// Listenelement entfernen => funktioniert
$(this).parent().remove();
});
}

Stimmt es, dass sich bei jedem Deiner Links befindet sich ein button mit Class "removeLink" befindet? Bei jedem Aufruf von "RemoveLink" addes Du dann an _jeden_ Deiner Buttons eine neue Funktion an das Click-Event. Wenn Du fünf Links darstellst, hast Du an den ersten fünf Funktionen angehängt. Die auch alle ausgeführt werden und Dein globale Variable dementsprechend fünf Mal inkrementieren.

Könnte das sein?

Gruß
Stefanie