WebHU - Programozási kérdések és válaszok

Hogyan léphet kapcsolatba egy táblázattal a google graphs api segítségével rajzolt irányítópulton?

Van egy irányítópultom, amely egy táblázatot és egy karakterláncszűrő dobozt tartalmaz. Szeretnék kapcsolatba lépni a táblával, hogy ki tudjam jelölni a sorokat, és le tudjak kérni belőle a megfelelő adatokat.

enyhe változtatások után a getSelection() metódus működött, de újabb probléma jelentkezett. Az alábbi kóddal megpróbálom szűrni a táblát, majd kiválasztani és lekérni a soradatokat. Úgy tűnik, minden rendben van, de amikor ezt teszem, a szűrt táblázatsor számok és a sorszámok a tényleges adatokban nem egyeznek. vagyis végül figyelmeztetem a soradatokat az előre szűrt táblázatra hivatkozva... Ismét minden javaslatot nagyra értékelünk... köszönöm...

       var dashboard, table, data;

  function drawVisualization() {

    var array = new Array(['ticker','time','bid','open','high','low','volume']);
    var ticker, time, bid, open, high, low, volume; 
        $.get('php/getdata.php', {input: 'stocklist'}, function(data1){

        $.each(data1, function(index, value){           
            ticker = value.ticker;
            time = value.time;
            bid = parseFloat(value.bid);
            open = parseFloat(value.open);
            high = parseFloat(value.high);
            low = parseFloat(value.low);
            volume = parseFloat(value.volume);
            array.push([ticker, time, bid, open, high, low, volume]);
        });

    data = google.visualization.arrayToDataTable(array);

    var stringFilter = new google.visualization.ControlWrapper({
      'controlType': 'StringFilter',
      'containerId': 'control1',
      'options': {
        'filterColumnLabel': 'ticker'
      }
    });

    table = new google.visualization.ChartWrapper({
      'chartType': 'Table',
      'containerId': 'chart1',
      'options': {'showRowNumber': false, 'height': '130px', 'width': '1000px'}
    });

    dashboard = new google.visualization.Dashboard(document.getElementById('dashboard'))
    dashboard.bind(stringFilter, table);
    dashboard.draw(data);

    google.visualization.events.addListener(table, 'select', selectHandler);
  }, "json");
  }

  function selectHandler() {
    var selection = table.getChart().getSelection();

  for (var i = 0; i < selection.length; i++) {
    var item = selection[i];
    if (item.row != null && item.column != null) {
        } else if (item.row != null) {
        stockID = data.getFormattedValue(item.row, 0);
        } else if (item.column != null) {
        stockID = data.getFormattedValue(0, item.column);
        }
    }
    if (stockID == '') {
    return;
    }       
alert(stockID);
}

  google.setOnLoadCallback(drawVisualization);

Válaszok:


1

Volt már hasonló problémám. A szűrő alkalmazása után be kell szereznie az új DataTable-t. Próbálj meg változtatni

stockID = data.getFormattedValue(item.row, 0);

to

stockID = table.getDataTable().getFormattedValue(item.row, 0);

és ugyanez a másik esetre is.

Egészségére

16.09.2014
Új anyagok

A rádiógomb ellenőrzött eseményének használata a jQueryben
Ebben a cikkben látni fogjuk, hogyan kell dolgozni a jquery választógombbal ellenőrzött eseményeivel. A választógombok HTML gombok, amelyek segítenek kiválasztani egyetlen értéket egy csoportból...

Körkörös függőségek megoldása terraformban adatforrásokkal – lépésről lépésre
Mi az a körkörös függőségek Dolgozzunk egy egyszerű eseten, amikor az SQS-sor és az S3-vödör közötti körkörös függőség problémája van egy egymástól függő címkeérték miatt. provider..

Miért érdemes elkezdeni a kódolást 2023-ban?
01100011 01101111 01100100 01100101 — beep boop beep boop Világunk folyamatosan fejlődik a technológia körül, és naponta fejlesztenek új technológiákat a valós problémák megoldására. Amint..

🎙 Random Noise #2  – Örökbefogadás és hit
az analitika íratlan világának gondozása Szeretné, hogy ezek a frissítések a postaládájába kerüljenek? Iratkozzon fel itt . "Ha önvezető autókat gyártanak, akkor mi miért ne..

A legrosszabb politika és prediktív modellek májátültetésre jelöltek számára az Egyesült Államokban
A máj (vagy óangolul lifer) az emberi test legnehezebb belső szervére utal, amely csendesen működik a nap 24 órájában. Mit csinál a máj? 500 feladatot hajt végre a szervezet egészségének..

5 webhely, amely 2022-ben fejleszti front-end fejlesztői készségeit
Frontendmentor.io A tényleges projektek létrehozásával a Frontendmentor.io segítséget nyújt a front-end kódolási képességeinek fejlesztésében. A kódolást azután kezdheti meg, hogy..

Mikor kell használni a Type-t az interfészhez képest a TypeScriptben?
A TypeScript a JavaScript gépelt szuperkészlete, amely statikus gépelést ad a nyelvhez. Ez megkönnyíti a robusztus és karbantartható kód írását azáltal, hogy a hibákat a fordítási időben..