带有ajax请求的数据表row()。every()

时间:2019-07-02 20:01:09

标签: jquery ajax datatables

我正在尝试更新每一行数据表内部的输入字段,但是首先我从一个单元格中获取一个值并将其发送给ajax以获取一个值,然后使用该值更新输入字段。

主要问题是rows()。every()的执行速度比ajax快,并且只有一行被更新。

这是我正在使用的代码:

updatePrices(0.95);

function updatePrices(freight){
  table.rows().every(function () {
   var sk = table.cell(this,2).data(); // HERE I GET THE VALUE OF DATTABLES TO SEARCH THE PRODUCT AND ITS PRICE.

   var dataString = 'sku='+ sk;

   $.ajax({
       type: "POST",
       url: "searchProductBySku.php",
       data: dataString,
       dataType: 'json',
       cache: false,
       success: function(data){
          newprice = parseFloat(data[9])+parseFloat(freight);// RETURN NEW PRICE AND SUM THE FREIGHT COST


 table.cell(this,9).nodes().to$().find('input').val(parseFloat(newprice).toFixed(2)); // AND CELL WITH INPUT IS UPDATED

        }
     });
  });
 alert('Prices were updated, please check them before send this order.');

}

0 个答案:

没有答案