2015-02-06 74 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