从 HTML 表中的每个 TD 获取数据并将其传递给控制器


get data from each td in html table and pass it to controller

我的采购订单表单中有动态生成的html表。所以我想从该表的每一行获取数据并将其保存到数据库中。这就是我尝试过的...

  $('#submit').click(function(){
  var TableData = new Array();
  $('#cart_details tr').each(function(row, tr){
    alert(row+ tr);
   TableData[row]={
    "productname" : $(tr).find('td:eq(0)').text()
    , "quantity" :$(tr).find('td:eq(1)').text()
    , "unit" : $(tr).find('td:eq(2)').text()
    , "unit_rate" : $(tr).find('td:eq(3)').text()
  }
    alert(TableData);
});
var obj=JSON.stringify(TableData);
 var followurl='<?php echo base_url()."index.php/purchase/save_product";?>';
 $.post( followurl, {'obj' : obj}, function(data){
    alert(obj);
        alert(data);

            }); 
});

在这里,我在提交表单时调用此函数,cart_details是表的 id。 产品名称和数量,单位,unit_rate是表的列名。

看到这个:

$(document).ready(function () {
    var TableData=[];//declare your array
    $('#submit').click(function(){
          $('#cart_details tr').each(function(row, tr){
            alert(row);
           TableData[row]={
            "productname" : $(tr).find('td:eq(0)').text()
            , "quantity" :$(tr).find('td:eq(1)').text()
            , "unit" : $(tr).find('td:eq(2)').text()
            , "unit_rate" : $(tr).find('td:eq(3)').text()
          }
            alert(JSON.stringify(TableData));
            console.log(TableData);//output [Object { productname="1", quantity="2", unit="3", more...}]
        });
        });
});

<table id="cart_details">
<tr><td>1</td><td>2</td><td>3</td><td>4</td></tr>
</table>
<button id="submit">click</button>