2017-06-21 48 views
0

使用普通的javascript編輯表格行值後,MY datatable未更新。表值正在改變。但是當我試圖把數據表中的數據,它正在舊的價值..編輯html表後,DataTable未更新

這裏是我的表:

<table id="Status" style="width:100%" class="table table-bordered"> 
            <thead style="background-color:#E0EEEE"> 
             <tr> 
              <th style="width:10px" class=""></th> 
              <th>Status</th> 
              <th class="hidden">Seq No</th> 
              <th class="hidden">Created by</th> 
              <th class="hidden">Created date</th> 
              <th class="hidden">Updated by</th> 
              <th class="hidden">Updated date</th> 
              <th class="hidden">RowVersion</th> 
              <th style="width:40px">Edit</th> 
             </tr> 
            </thead> 
            <tbody> 

            </tbody> 
           </table> 

我使用這個初始化數據表:

var StatusDataTable = $('#Status').DataTable({ 
      "fixedHeader": true, 
      "lengthMenu": [[5, 10, 25, -1], [5, 10, 25, "All"]], 
      "bSort": false, 
      "scrollX": true, 
      "oLanguage": { 

       "sInfoEmpty": '', 
       "sEmptyTable": "No Data Available", 
      } 

     }); 

正在編輯表使用此代碼的內容:

td[1].innerHTML = model.Name; td[2].innerHTML = model.SequenceNumber; 
          td[5].innerHTML = json.result.UpdatedBy; td[6].innerHTML = json.result.UpdatedDate; td[7].innerHTML = json.result.RowVersion; 
          tr.context.id = json.result.TaskStatusId; 

但是當我試圖獲取數據表數據時,gett只有舊的價值。

var data1 = StatusDataTable.row(index).data(); 
var data2 = StatusDataTable.row(index + order).data(); 

我已經編輯data1的記者列。但是仍然在獲取data1中的舊值。

+0

嘗試在更新後調用'draw()'。 –

+0

F12,控制檯中有什麼錯誤? – mkaatman

+0

我試圖畫也..但它仍然不工作.. –

回答

0

你不應該使用數據表apis更新數據表嗎?像

table.rows().every(function(rowIdx, tableLoop, rowLoop) { 
    var self = this; 
    var d = this.data(); 
    d[2] = model.SequenceNumber 
    d[5] = json.result.UpdatedBy 
     self.data(d); 
     self.invalidate(); 
    }); 
    table.draw();