我正在尝试将URL中的JSON加载到Tabulator表中。我在这里有一个jsfiddle https://jsfiddle.net/liostse/2tdtyL6d/
var tableData = [];
$.getJSON('http://88.99.13.199:3000/regionsdata', function(mydata) {
mydata.forEach(function(val) {
var regdata = {};
regdata.measure_code = val.measure_code;
regdata.totalbent = val.totalbent;
regdata.totalddent = val.totalddent;
regdata.totaldd = val.totaldd;
regdata.pctpliromes = val.pctpliromes;
tableData.push(regdata);
});
});
$("#mytable").tabulator({
data: tableData,
layout: "fitColumns",
tooltipsHeader: false,
columns:
[{title: "Measure",field: "measure_code",sorter: "string",frozen: true},
{title: "totalbent",field: "totalbent"},
{title: "totalddent",field: "totalddent"},
{title: "totaldd",field: "totaldd"},
{title: "pctpliromes",field: "pctpliromes"}],
});
请注意,如果我使用硬编码数据,则可以使用:
var tableData = [
{measure_code:"Μ1",totalbent:"", totalddent:"", totaldd:"", pctpliromes:""},
{measure_code:"Μ2",totalbent:"", totalddent:"", totaldd:"", pctpliromes:""},
{measure_code:"Μ3",totalbent:"", totalddent:"", totaldd:"", pctpliromes:""},
{measure_code:"Μ19",totalbent:"", totalddent:"", totaldd:"", pctpliromes:""},
{measure_code:"Μ20",totalbent:"", totalddent:"", totaldd:"", pctpliromes:""},
{measure_code:"Μ97",totalbent:"", totalddent:"", totaldd:"", pctpliromes:""},
];
任何帮助将是巨大的!
最佳答案
getJSON是异步的,因此当您调用.tabulator时,您的数据还不存在。
您必须在getJSON成功函数中放置对.tabulator的调用,即:
$.getJSON('http://88.99.13.199:3000/regionsdata', function(mydata) {
mydata.forEach(function(val) {
...
});
$("#mytable").tabulator({
...
});
});