Hiermit wird eine Tabelle mit der Anzahl der Ergebnisse gefüllt, die von der MediaWiki-API-Abfrage /api.php?action=query&list=querypage&qppage=BrokenRedirects
zurückgegeben werden. Die Anzahl der Ergebnisse wird dann zur ID hinzugefügt, zum Beispiel:
Aber da es noch sieben Mal wiederholt wird, habe ich die Argumente für qppage in ein Array geschrieben und eine for-Schleife verwendet, um den gesamten Code zu verkürzen.
%Vor% Die erste, nicht geschlungene Version funktioniert. Aber als ich eine Schleife hinzufügte, tat es das nicht. Der $getJSON
-Teil wird ausgeführt, aber er fügt die resultierenden Daten nicht zur ID hinzu. Ich habe es durch JSLint laufen lassen, das abgesehen davon, dass man sich über Funktionen in einer Schleife beschwert und var i
mit var array
deklariert hat, wenig Hilfe zurückgegeben hat. Ich bin relativ unerfahren mit Javascript also gedacht vielleicht eine Variable kann nicht zweimal innerhalb einer Schleife verwendet werden? Abgesehen davon, vielleicht etwas mit der Verwendung einer ID innerhalb einer Schleife zu tun?
Das ist ein klassisches Problem: i
hat den Wert von end of loop, wenn der Callback aufgerufen wird.
Sie können es so beheben:
%Vor%Verwenden Sie Jquery $ .each () , um das Array anstelle einer for-Schleife zu durchlaufen.
Zum Beispiel:
%Vor%Tags und Links javascript mediawiki-api