Ich glaube, dass dies einfach zu erreichen ist, aber ich kann nicht herausfinden, wie es geht. Ist es möglich, ein jQuery-Plugin neu zu laden, ohne die gesamte Seite neu zu laden, damit es seine Werte aktualisieren kann? Ich habe ähnliche Fragen gelesen, aber sie beziehen sich auf spezifische Plugins. Ich würde gerne wissen, ob jemand einen "generischen" Weg kennt, um dies zu erreichen, damit es in vielen JQ-Plugins verwendet werden kann.
Wie auch immer, spezieller gefragt, stelle ich diese Frage, um jQuery File Tree neu zu laden. Ich habe das hier:
JavaScript
$(document).ready( function() {
$('#fileTree').fileTree({
root: '/some/path/to/somewhere/',
script: 'js/jqueryFileTree-1.01/connectors/jqueryFileTree.php',
folderEvent: 'click',
expandSpeed: 1000,
collapseSpeed: 1000,
multiFolder: false,
loadMessage: 'Wird geladen...'
}, function(file) {
relativePath=file.replace("/some/path","");
aFunction(relativePath, file);
});
});
HTML
An einem bestimmten Punkt habe ich AJAX+PHP-Code, der es mir ermöglicht, die ausgewählte Datei zu löschen. Das funktioniert gut! ABER die gelöschte Datei wird immer noch im Dateibaum angezeigt. Wenn ich ein window.location.reload()
in meinem Erfolgsereignis in dieser Funktion hinzufüge, wird natürlich die gesamte Seite neu geladen und mein Baum zeigt die tatsächlichen Dateien im Ordner wie beabsichtigt an.
Frage: Gibt es eine Möglichkeit, es neu zu laden, ohne die gesamte Seite zu aktualisieren?
Bitte beachten Sie, dass der Autor dieses Plugins mir auf Twitter gesagt hat:
@metafaniel Das Problem ist, dass es in keinem unserer Projekte mehr verwendet wird. Es ist ein altes, altes Skript, das überholt werden muss. via @abeautifulsite
@metafaniel Du musst das selbst hinzufügen. Da das Plugin sehr alt ist, hat es keine vollständige API. via @abeautifulsite
Ich habe keine Zeit mehr, meinen Code mit einem anderen Plugin neu zu schreiben, ich muss es auf diese Weise fertigstellen.