2017-08-05 83 views
0

我們爲我們公司編制報價單並希望爲其添加產品數據表和更改值。更改數據後,我們發送給控制器,但他們第一次相同。這裏是可數據結構。數據表在行上動態更改,但數據對象不會更改ajax

var selectedProduct = $('#selectedproduct').DataTable({ 
      "columns": [ 
        { 
         "orderable": false, 
         "data": "IsConfirm", 
        }, 
       { "orderable": false, "data": "Product.Id" }, 
       { "orderable": false, "data": "Product.Name" }, 
       { "orderable": false, "data": "Product.Description" }, 
       { 
        "orderable": false, 
        "data": "Quantity", 
        "render": function (data, type, full, meta) { 
         return '<td width="100px"><input class="touchspinquantity" type="text" value="' + data + '" name="quantity"></td>'; 
        } 
       }, 
       { "orderable": false, "data": "Product.SalePrice" }, 
       { 
        "orderable": false, 
        "data": "Discount", 
        "render": function (data, type, full, meta) { 
         return '<td width="100px"><input class="touchspindiscount" type="text" value="' + data + '" name="discount"></td>'; 
        } 
       }, 
       { "orderable": false, "data": "Product.Currency" }, 
       { "orderable": false, "data": null, "defaultContent": '' }, 
       { 
        "orderable": false, 
        "data": null, 
        "defaultContent": '<button id="deleteproduct" class="btn btn-warning btn-circle" type="button"><i class="fa fa-times"></i></button>' 
       }, 

      ], 
      "createdRow": function (row, data, index) { 
       if (data.IsConfirm) { 
        $('td', row).eq(0).html('<input type="checkbox" checked class="i-checks" name="input[]">'); 
       } 
       else { 
        $('td', row).eq(0).html('<input type="checkbox" class="i-checks" name="input[]">'); 
       } 
      }, 
      "searching": false, 
      "paging": false, 
      "bInfo": false, 
      "ordering": false 
     }); 

這裏是如何獲取數據

var datat = table.fnGetData(); 

回答

0

我解決了問題,但也許這不是好辦法後重繪數據表。 這是解決

var rows = table.fnGetNodes(); 
      var arr = [[]]; 
      for (var i = 0; i < rows.length; i++) { 
       var detaildata = []; 
       var cells = rows[i].cells; 
       detaildata[0] = cells[0].childNodes["0"].checked; 
       detaildata[1] = cells[1].innerText; 
       detaildata[2] = cells[2].innerText; 
       detaildata[3] = cells[3].innerText; 
       detaildata[4] = cells[4].firstChild.childNodes[1].value; 
       detaildata[5] = cells[5].innerText; 
       detaildata[6] = cells[6].firstChild.childNodes[1].value; 
       detaildata[7] = cells[7].innerText; 
       detaildata[8] = cells[8].innerText; 

       arr[[i]] = detaildata; 
       //var select = cells[0].children[0].value; 
       //if (cells[0].children[0].checked) { 
       // select = cells[0].children[0].value; 
       //} else { 
       // select = 'off'; 
       //} 
      } 
0

您可能需要更新用

selectedProduct.draw(); 
+0

不工作:(問題是我的發送對象是不會改變後列編輯 – Haldun