Ich verwende Freebase Search Suggest, um ein bestimmtes Schlüsselwort an eine getJson-Anfrage zu binden. Das Problem ist, dass ich getJson-Funktionen und die entsprechenden .append / .prepend-Funktionen an das Eingabefeld binden, das die Suche vorschlagen soll. Jetzt, wenn ich (.empty) mein div löschen möchte, das das Ergebnis von den getJson Funktionen enthält, kann ich nichts anhängen.
Jedes Mal, wenn ich eine Suche mache, bleibt das Ergebnis div leer. Wenn ich nicht versuche, die leere Funktion auszuführen und eine zweite Suche durchzuführen, wird die neue Information über die vorherige Information angehängt.
Meine Website www.karsten-tietje.dk/sw
%Vor%Dies ist nur ein Ausschnitt aus meinem Code. Ich führe mehrere getJson-Funktionen aus.
Wie kann ich mein Ergebnis-Div löschen / leeren, bevor ich die anderen Funktionen ausführe?
Viele Leute haben die Mechanismen der Lichtung erklärt, was so klingt, als würdest du es bereits verstehen, also ist vielleicht das fehlende Teil wenn es gemacht wird. Wahrscheinlich möchten Sie die Dinge als allererstes in Ihrem Freebase Suggest select Callback löschen, bevor Sie die Abfragen an andere Dienste wie Spotify abfeuern (d. H. Vor dem ersten $ .getJSON ()).
Nicht im Zusammenhang mit Ihrer Frage, aber vergessen Sie nicht die Attributionspflicht der Freebase-Lizenz (die derzeit nicht auf Ihrer Website bereitgestellt wird).
EDIT: Hier ist dein Code mit leeren hinzugefügt:
%Vor%Mit jQuery gibt es viele Möglichkeiten, ein Element seines Inhalts zu leeren und Inhalte anzuhängen / voranzustellen.
Eins ist .empty();
( Dokumentation )
Ein anderer ist .html( [ html ] );
( Dokumentation )
Wenn Sie den HTML-Code ändern und sich nicht darum sorgen, Ereignisse beizubehalten, können Sie Ihren HTML-Code einfach durch die Funktion .html( 'Your HTML' );
Sie können dies auch tun, indem Sie den inneren HTML-Code des HTML-Codes mit der ID "spotify" löschen:
%Vor%Tags und Links javascript jquery freebase