如何从 `<td>` 中的文本添加分号,然后通过 ajax 发送它

how to add semicolon from a text inside `<td>` then send it via ajax

我正在尝试使用我的简单 ajax 从我的 <td> 发送文本到我的控制器(我正在使用 Codeigniter)。

这是我的 HTML

<table class="table table-striped col-md-9 cstm">
            <thead>
                <tr>
                    <td> <strong>Transaction No</strong> </td> 
                    <td> <strong> Line No </strong> </td>
                    <td> <strong>Item Code</strong> </td> 
                    <td> <strong>Item Name</strong> </td> 
                    <td> <strong>Extra Remark</strong> </td> 
                    <td> <strong>Extra Remark 2</strong> </td> 
                    <td width="10%"> <strong>Item QTY</strong> </td> 
                    <td width="10%"> <strong>Receive QTY</strong> </td> 
                    <td width="10%"> <strong>UOM Code</strong> </td>
                    <td width="10%"> <strong>Extra Remark Receipt</strong> </td>
               </tr>
            </thead>

            <tbody>
                            <tr>
                    <td class="notrans">DORD-DK-M-TAM-69</td>
                    <td>1000 <input value="1000" type="hidden" name="LineNo[]" /> </td>
                     <td>S160291 <input value="S160291" type="hidden" name="ItemCode[]" /> </td>
                    <td>SMALL BAG <input value="SMALL BAG" type="hidden" name="ItemName[]" /> </td>
                    <td>  <input value="" type="hidden" name="ExtraRemark[]" /></td>
                    <td>  <input value="" type="hidden" name="ExtraRemark2[]" /></td>
                    <td>2 <input value="2.00000000000000000000" type="hidden" name="Quantity[]" /> </td>
                    <td><input required="required" type="text" value="2" name="recv_qty[]" /> </td>
                    <td> PCS<input type="hidden" value="PCS" name="uom[]" />  </td>
                    <td><input type="text" value="" name="ext_rmrk[]" /></td>
                </tr>

                            <tr>
                    <td class="notrans">DORD-DK-M-TAM-70</td>
                    <td>2000 <input value="2000" type="hidden" name="LineNo[]" /> </td>
                     <td>S160288 <input value="S160288" type="hidden" name="ItemCode[]" /> </td>
                    <td>SMALL BAG <input value="SMALL BAG" type="hidden" name="ItemName[]" /> </td>
                    <td>  <input value="" type="hidden" name="ExtraRemark[]" /></td>
                    <td>  <input value="" type="hidden" name="ExtraRemark2[]" /></td>
                    <td>2 <input value="2.00000000000000000000" type="hidden" name="Quantity[]" /> </td>
                    <td><input required="required" type="text" value="2" name="recv_qty[]" /> </td>
                    <td> PCS<input type="hidden" value="PCS" name="uom[]" />  </td>
                    <td><input type="text" value="" name="ext_rmrk[]" /></td>
                </tr>

                        </tbody>
      </table>

       <a class="pull-right btn btn-warning" id="update" href="#"> Update </a>

这是我的 Jquery

$("#update").click(function(){

    $this = $(this).val() 
        $.ajax({
            data : { DetTrans : $('.notrans').text() },
            url  : "<?=base_url();?>dr_mutasi/updateEditItem",
            type : "POST",
            dataType: 'JSON',
            success: function(data) {
                         console.log(data);
                }     
        })
});

这是我的 PHP

    function updateEditItem(){
            extract(populateform());
            echo $DetTrans;     
 }

所以,上面我的脚本。我从我的 console.log

得到这个
DORD-DK-M-TAM-69DORD-DK-M-TAM-70

如您所见,从我的 table 来看,有 .notrans 并且两者的值不同。你能告诉我如何用这种格式通过 ajax 发送吗?

DORD-DK-M-TAM-69;DORD-DK-M-TAM-70

所以我以后可以用我的 PHP 炸掉它。提前致谢。

您可以更新您的 jquery 以获取包含 notrans class.

的所有 td 的值
<script type="text/javascript">
 $(function(){
    var value = '';
    $('.notrans').each(function(){
        if(value.length > 0)
        value = value + ';' + $(this).text(); // will give you the value.
     else
        value = $(this).text();
    });

 });
    </script>

使用value通过ajax发送数据。

$("#update").click(function(){var value="";
                              
  $(document).find('.notrans').each(function(){
    value += (value.length > 0) ? ';' + $(this).text():$(this).text();
  });
  
  $.ajax({
    data : { DetTrans : value},
    url  : "<?=base_url();?>dr_mutasi/updateEditItem",
    type : "POST",
    dataType: 'JSON',
    success: function(data) {
      console.log(data);
    }     
  });
                              
});
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
    <table class="table table-striped col-md-9 cstm">
     <thead>
      <tr><td> <strong>Transaction No</strong> </td> </tr>
     </thead>
     <tbody>
      <tr><td class="notrans">DORD-DK-M-TAM-69</td></tr>
      <tr><td class="notrans">DORD-DK-M-TAM-70</td></tr>
      <tr><td class="notrans">DORD-DK-M-TAM-71</td></tr>
      <tr><td class="notrans">DORD-DK-M-TAM-72</td></tr>
     </tbody>
    </table>
    <a class="pull-right btn btn-warning" id="update" href="#"> Update </a>