簡體   English   中英

如何在ajax調用的迭代ID中獲得結果

[英]how to get result in iteration ids in ajax call

如何在ajax調用中的迭代ID中獲取結果...結果應該在迭代ID中,但是...結果不顯示。如何在php ajax調用for循環迭代ID中獲取dsplay結果?

這是我的HTML代碼

<tr>
                      <td><span id="sr_no">1</span></td>
                      <td><select type="text" name="item_name[]" id="item_name1" class="form-control input-sm"  onChange="getbrand(this.value);" />
                      <option value=""></option>
                      <?php
    include "conn.php";
    $sql = "SELECT category FROM `product` GROUP BY category";
    $run = mysqli_query($conn,$sql);

    while($row=mysqli_fetch_array($run))
    {
    ?>
<option><?php echo $row['category']; ?></option>
        <?php } ?>
                      </select>
                      </td>
                      <td>
                        <select type="text" name="item_name[]" id="brand" class="form-control input-sm" />
                        <option value=""></option>

                        </select>
                      </td>
                      <td><input type="text" name="order_item_quantity[]" id="order_item_quantity1" data-srno="1" class="form-control input-sm order_item_quantity" /></td>
                      <td><input type="text" name="order_item_price[]" id="order_item_price1" data-srno="1" class="form-control input-sm number_only order_item_price" /></td>
                      <td><input type="text" name="order_item_actual_amount[]" id="order_item_actual_amount1" data-srno="1" class="form-control input-sm order_item_actual_amount" readonly /></td>
                      <td><input type="text" name="order_item_tax1_rate[]" id="order_item_tax1_rate1" data-srno="1" class="form-control input-sm number_only order_item_tax1_rate" /></td>
                      <td><input type="text" name="order_item_tax1_amount[]" id="order_item_tax1_amount1" data-srno="1" readonly class="form-control input-sm order_item_tax1_amount" /></td>
                     <td><input type="text" name="order_item_final_amount[]" id="order_item_final_amount1" data-srno="1" readonly class="form-control input-sm order_item_final_amount" /></td>
                      <td></td>
                    </tr>
                  </table>
                  <div align="right">
                    <button type="button" name="add_row" id="add_row" class="btn btn-success btn-xs">+</button>
                  </div>
                </td>
              </tr>

這是我的Java腳本

<script>
      $(document).ready(function(){
        var final_total_amt = $('#final_total_amt').text();
        var count = 1;

        $(document).on('click', '#add_row', function(){
          count++;
          $('#total_item').val(count);
          var html_code = '';
          html_code += '<tr id="row_id_'+count+'">';
          html_code += '<td><span id="sr_no">'+count+'</span></td>';

         html_code += '<td><select name="item_name[]" id="item_name'+count+'" class="form-control input-sm" onChange="getbrand(this.value);" ><option></option><?php $sql='Select category from product GROUP BY category'; $run=mysqli_query($conn,$sql); while($row=mysqli_fetch_array($run)){ echo '<option>'.$row['category'].'</option>'; } ?></select></td>';

          html_code += '<td><select name="brand[]" id="brand'+count+'" class="form-control input-sm" ><option></option></select></td>';

          html_code += '<td><input type="text" name="order_item_quantity[]" id="order_item_quantity'+count+'" data-srno="'+count+'" class="form-control input-sm number_only order_item_quantity" /></td>';

          html_code += '<td><input type="text" name="order_item_price[]" id="order_item_price'+count+'" data-srno="'+count+'" class="form-control input-sm number_only order_item_price" /></td>';

          html_code += '<td><input type="text" name="order_item_actual_amount[]" id="order_item_actual_amount'+count+'" data-srno="'+count+'" class="form-control input-sm order_item_actual_amount" readonly /></td>';

          html_code += '<td><input type="text" name="order_item_tax1_rate[]" id="order_item_tax1_rate'+count+'" data-srno="'+count+'" class="form-control input-sm number_only order_item_tax1_rate" /></td>';

          html_code += '<td><input type="text" name="order_item_tax1_amount[]" id="order_item_tax1_amount'+count+'" data-srno="'+count+'" readonly class="form-control input-sm order_item_tax1_amount" /></td>';

          html_code += '<td><input type="text" name="order_item_final_amount[]" id="order_item_final_amount'+count+'" data-srno="'+count+'" readonly class="form-control input-sm order_item_final_amount" /></td>';

          html_code += '<td><button type="button" name="remove_row" id="'+count+'" class="btn btn-danger btn-xs remove_row">X</button></td>';
          html_code += '</tr>';
          $('#invoice-item-table').append(html_code);
        });

        $(document).on('click', '.remove_row', function(){
          var row_id = $(this).attr("id");
          var total_item_amount = $('#order_item_final_amount'+row_id).val();
          var final_amount = $('#final_total_amt').text();
          var result_amount = parseFloat(final_amount) - parseFloat(total_item_amount);
          $('#final_total_amt').text(result_amount);
          $('#row_id_'+row_id).remove();
          count--;
          $('#total_item').val(count);
        });


function getbrand(count) {
 for(k=1; k<=count; k++)
          {
$.ajax({
type: "POST",
url: "ajax_brand.php",
data:'state_id='+val,
success: function(data){ 

$("#brand"+k).html(data);
}
});}
}
</script>

我對此腳本的問題.....如何在此ajax調用中為ID添加迭代。

function getbrand(count) {
     for(k=1; k<=count; k++)
              {


     $.ajax({
        type: "POST",
        url: "ajax_brand.php",
        data:'state_id='+val,
        success: function(data){ 

        $("#brand"+k).html(data);
        }
        });}
        }

由於我們沒有關於如何從ajax_brand.php返回數據的格式,因此我假設這是品牌ID和品牌名稱條目的數組。

例如

[
   {
      "id":"1",
      "name":"Brand 1"
   },
   {
      "id":"2",
      "name":"Brand 2"
   }
]

那么,ajax的成功應該是這樣的。 當然,您需要用for循環k計數器替換ID brand1

 $(document).ready(function() { $('#button-fire').on('click', function() { handleFire(); }); }); function handleFire() { var brandSelect = $('#brand1').empty(); $.ajax({ type: "POST", // mock url url: "http://5b6a940cad81cd0014d152d2.mockapi.io/brand/api/v1/brands", success: function(data) { data.forEach(function(brand) { brandSelect.append($('<option>', { value: brand.id }).html(brand.name) ); }); } }); } 
 <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <select name="brand[]" id="brand1" class="form-control input-sm"> <option></option> </select> <button id="button-fire">fire</button> 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM