Сюжет JQuery не работает в $ .getJSON - PullRequest
0 голосов
/ 14 ноября 2009

код в javascript

$(document).ready(function () {var options = {
    series: { points: { show: true }, shadowSize: 0 },
    xaxis: { mode: "time" },
    yaxis: {  min:0, max: 100 },
    pan: { interactive: true }};
    $.getJSON("http://localhost:8085/WebApplication1/metricsJson.jsp?instanceId=3457",
        function(data){
        alert(data);
        var plot = $.plot($("#placeholder"), data, options);
  });});

и http://localhost:8085/WebApplication1/metricsJson.jsp?instanceId=3457 возвращает

{"data": [[[1258216500000,4.91], [1258212240000,4.39], [1258216920000,4.46], [1258211640000,4.39], [1258210980000,4.82]]]}

спасибо

1 Ответ

1 голос
/ 14 ноября 2009

Я обычно проверяю, прежде чем отправлять, но я буду отправлять вслепую здесь.

Я считаю, что нужно проверить, как вы передаете данные на флотацию. Я думаю, что ваш вызов на плоттер Flot должен выглядеть следующим образом (учитывая, как вы называете переменные):

$.plot($("#placeholder"), data.data, options);

Это из-за того, как работает JSON.

Во-вторых, я думаю, что flot ожидает двухмерный массив, а не трехмерный. Ваш JSON-объект состоит из массива из 2-х элементных массивов в другом массиве. Если вы можете, пусть ваш сервер возвращает только 2-й массив. В противном случае вы можете попробовать:

$.plot($("#placeholder"), data.data[0], options);
...