2015-02-06 53 views
0

我在更新Google DataTable中的单元格时遇到问题,并且显示反映了更改。现在,我的解决方案是重新绘制表格,但它会弄乱页面滚动和用户在表格中的位置。Google DataTable - 更新单元格和显示

任何想法我失踪?谢谢您的帮助。

回答

1

你使用过setCell函数吗?以下代码提供了一个按钮来更改表格中的一个名称。如果用户点击一行以突出显示该行,则不会更改滚动位置或突出显示哪一行。

<html> 
    <head> 
    <script type="text/javascript" src="https://www.google.com/jsapi"></script> 
    <script type="text/javascript"> 
     google.load("visualization", "1", {packages:["table"]}); 
     google.setOnLoadCallback(drawTable); 
     var table; 
     var data; 

     function drawTable() { 
     data = new google.visualization.DataTable(); 
     data.addColumn('string', 'Name'); 
     data.addColumn('number', 'Salary'); 
     data.addColumn('boolean', 'Full Time Employee'); 
     data.addRows([ 
      ['Mike', {v: 10000, f: '$10,000'}, true], 
      ['Jim', {v:8000, f: '$8,000'}, false], 
      ['Alice', {v: 12500, f: '$12,500'}, true], 
      ['Bob', {v: 7000, f: '$7,000'}, true], 
      ['Mike', {v: 10000, f: '$10,000'}, true], 
      ['Jim', {v:8000, f: '$8,000'}, false], 
      ['Alice', {v: 12500, f: '$12,500'}, true], 
      ['Bob', {v: 7000, f: '$7,000'}, true], 
      ['Mike', {v: 10000, f: '$10,000'}, true], 
      ['Jim', {v:8000, f: '$8,000'}, false], 
      ['Alice', {v: 12500, f: '$12,500'}, true], 
      ['Bob', {v: 7000, f: '$7,000'}, true], 
      ['Mike', {v: 10000, f: '$10,000'}, true], 
      ['Jim', {v:8000, f: '$8,000'}, false], 
      ['Alice', {v: 12500, f: '$12,500'}, true], 
      ['Bob', {v: 7000, f: '$7,000'}, true] 
     ]); 

     table = new google.visualization.Table(document.getElementById('table_div')); 

     table.draw(data, {showRowNumber: true}); 
     } 

     function changeCell() { 
      data.setCell(1, 0, 'Changed Name'); 
      table.draw(data, {showRowNumber: true}); 
     } 
    </script> 
    </head> 
    <body> 
    <div id="table_div"></div> 
    <button onclick="changeCell()">Change</button> 
    </body> 
</html> 
+0

感谢您的支持。这正是我正在做的。 – user1732055 2015-02-11 12:21:12

相关问题