PivotTable.JS回调实现问题

时间:2019-07-10 16:39:13

标签: pivottable.js

我已经在Filemaker中实现了PivotTable.JS,并且效果很好。我已经添加了回调代码,并且当我单击一个单元格时该函数似乎可以正常工作。当单击单元格时,会出现“来自网页的消息”对话框,我假设我仍然需要添加一些代码来显示构成单击单元格内容的记录。显示记录的方法是什么,不幸的是我不是精通Java脚本。

$("#output").pivotUI(
  $.pivotUtilities.tipsData, {
    cols: ["Quarter Latest"],
    rows: ["Customer"],
    vals: ["Wt Forecast"],
    aggregatorName: "Sum",
  rendererName: "Table",
    renderers: $.extend(
         $.pivotUtilities.renderers,
      $.pivotUtilities.c3_renderers,
$.pivotUtilities.export_renderers
    ),
rendererOptions: {
                    table: {
                        clickCallback: function(e, value, filters, pivotData){
                            var names = [];
                            pivotData.forEachMatchingRecord(filters,
                                function(record){ names.push(record.Name); });
                            alert(names.join("\n"));
                        }
                    }
                }
  });

1 个答案:

答案 0 :(得分:0)

我想问题是您正在将记录集中不可用的字段“名称”推入“名称”数组。 您可以通过对代码进行一些小的更改来访问在clickCallBack上返回的decomplete json。

$("#output").pivotUI(
  $.pivotUtilities.tipsData, {
    cols: ["Quarter Latest"],
    rows: ["Customer"],
    vals: ["Wt Forecast"],
    aggregatorName: "Sum",
  rendererName: "Table",
    renderers: $.extend(
         $.pivotUtilities.renderers,
      $.pivotUtilities.c3_renderers,
$.pivotUtilities.export_renderers
    ),
rendererOptions: {
                    table: {
                        clickCallback: function(e, value, filters, pivotData){
                            var fullData = [];
                            pivotData.forEachMatchingRecord(filters,
                                function(record){ fullData.push(record); });
                            console.log(fullData);
                        }
                    }
                }
  });

也许以后您可以将该JSON传递给另一个函数并建立一个表。