将JSON对象相关链接添加到Dynatable行

时间:2014-08-14 11:10:33

标签: javascript dynatable

我正在尝试Dynatables,到目前为止,我能够正确显示我的数据并在某个事件发生时更新其内容。到目前为止,这就是我所拥有的:http://jsfiddle.net/pDVvx/28/

$(document).ready( function() {
  var allSales = [{
    locationId: 1001,
    location: "Store A",
    item: "Soap",
    quantity: 2,
    amount: 99.50
  },{
    locationId: 1002,
    location: "Store B",
    item: "Tissue",
    quantity: 1,
    amount: 49.75
  }];

  var allSales2 = [{
    locationId: 2001,
    location: "Store C",
    item: "Bag",
    quantity: 1,
    amount: 10000.00
  },{
    locationId: 2002,
    location: "Store D",
    item: "Shoe",
    quantity: 2,
    amount: 5999.50
  }];

  var locationDetails = [{
    locationId: 1001,
    location: "Store A",
    address: "some address here",
    manager: "Pepito Manaloto"
  },{
    ....
  }];

  var updateDynaTable = function(argument){
    console.log("argument for updateDynaTable");
    console.log(argument);
    dynatable.settings.dataset.originalRecords = argument;
    dynatable.process();
  }

  var dynatable = $('#my-final-table').dynatable({
    dataset: {
        records: allSales
    }
  }).data('dynatable');

  $("#button1").click(function(){
    updateDynaTable(allSales);  
  })

  $("#button2").click(function(){
    updateDynaTable(allSales2);  
  })
});

此外,我想让每个位置(商店A,商店B等)具有与其相关联的相应locationID的可点击链接。我需要这个,这样每当我点击商店链接时,都会提示相应的商店详情(如locationDetails表所示)。

例如,如果点击 sales1 按钮并点击商店A ,则提示(可能是提醒)将显示商店的地址和经理(来自 locationDetails 表)。

如果有人可以提出任何解决方案,那将非常有帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

在过去的20分钟左右我一直在研究这个问题,我得出的结论是,如果你用JSON构建你的dynatable,这并不容易。我认为dynatable站点顶部的国家示例可能是作为服务器端的常规html表构建的,然后dynatable只是用于排序/分页/等。

似乎另一种可能的选择是在你的JSON中返回你想要创建的单元格的完整内容,包括任何链接等(或者在javascript中对JSON进行后处理以将其变成你想要的形式)