Ich versuche, hohe Diagramme beim Laden der Seite zu aktualisieren und bei einem Menüwechsel mit JQUERY AJAX zu wechseln. Es werden Daten im Format [[101228800000], [10,1288800000]] zurückgegeben. Das Diagramm ist leer und zeigt keine der Daten an.
Versuchte mehrere Lösungen, die hier gepostet wurden, aber keine funktionierte.
%Vor%Irgendwelche Fehler? Danke im Voraus. EDIT:
Der neueste Code funktioniert noch nicht:
%Vor% Sie müssen die Methode setData des Serienobjekts verwenden, wie in der Dokumentation beschrieben. In Ihrem Fall ist es options.series[0].setData(Data)
Und ich denke, Sie müssen Ihr Ajax-Ergebnis von String zu einem realen Objekt / Array machen, indem Sie JSON.parse(data)
verwenden.
BEARBEITEN:
@Ricardo Lohmann: Im Ajax-Aufruf hat er nicht den Datentyp angegeben, den er in der Antwort erwartet, also wird jQuery den Datentyp erraten. Aber es erkennt keine Zeichenfolge, die mit [
als JSON beginnt, und ich bezweifle, dass seine Antwort mit dem korrekten Mime-Typ application/json
geliefert wird. Wenn Sie also den richtigen Mime-Typ angeben, sollte das Problem ebenfalls gelöst werden. Aber ich habe kein Beispiel für die vollständige Ajax-Antwort des Fragestellers. Also rate ich auch nur.
Ich würde den folgenden Ajax-Aufruf empfehlen:
%Vor%@Jugal Thakkar
$.getJSON
ist nur eine Abkürzung für den obigen Ajax-Aufruf, aber es ist weniger flexibel, weil Sie weniger Optionen haben.
Sie müssen data
direkt auf series setzen, weil data
bereits ein mehrdimensionales Array ist.
Der folgende Code wird es beheben.
Ändern Sie options.series.push(data);
in options.series = data;
Tags und Links ajax json highcharts