What I want to do is when user enter quantity and unit price, the total amount will auto prompt, but now the problem is when user add a new row, the dynamical row its does not taking the calculations. Anyone have any idea on how to do it?
I'm not sure whether my coding is right or wrong because I not very familiar with jQuery. Fiddle
<table>
  <thead>
    <tr>
      <th>Action</th>
      <th>Description</th>
      <th>Qty</th>
      <th>Unit Price</th>
      <th>Amount</th>
       <th>Tax</th>
    </tr>
  </thead>
  <tbody class="items_table">
    <tr class="item-row">
      <td><button id="delete" href="javascript:;" onclick="deleteRow(this)" title="Remove row">Delete</button></td>
      <td><input class="form-control row-desc" id="desc" rows="1"></td>
      <td><input class="form-control tx-right row-qty" type="text" id="qty" onkeyup="calc()" value="0"></td>
      <td><input class="form-control tx-right row-unitprice" type="text" id="unitprice" value="0"></td>
      <td><input class="form-control tx-right row-amount" type="text" id="amount" disabled></td>
      <td>
        <input class="form-control tx-right row-tax" type="text" id="amounttax"></td>
    </tr>
   
  </tbody>
  <tr id="hiderow">
    <td colspan="7" class="tx-center tx-15"><b><a id="addrow" href="javascript:;" title="Add a row"><i class="fe fe-plus-circle"></i>Add an Item</a></b></td>
  </tr>
</table>
<br><br>
        $(document).ready(function() {
          AddItem();
          $('#addrow').click(function() {
            addItem();
          });
          $('.delete-row').click(function() {
            deleteRow(btn);
          });
                      $('#qty').on('keyup', 'input', function () {
                inputs = $(this).parents('tr');
                calc(inputs); 
            });
        });
        function deleteRow(btn) {
          var row = btn.parentNode.parentNode;
          var next = row.parentNode.rows[row.rowIndex + 0];
          row.parentNode.removeChild(next);
          row.parentNode.removeChild(row);
        }
        function addItem() {
          var itemRow =
            `<tr class="item-row">
            <td><button class="delete-row" href="javascript:; "onclick = "deleteRow(this)">Delete</button></td>
            <td><textarea class="form-control row-desc" id="desc" rows="1"></textarea></td> 
            <td><input class="form-control tx-right row-qty" type="text" id="qty" onkeyup="calc()" value="0"></td>
            <td><input class="form-control tx-right row-unitprice" type="text" id="unitprice" value="0"></td>
            <td><input class="form-control tx-right row-amount" type="text" id="amount" disabled></td>
          <td><input class="form-control tx-right row-tax" type="text" id="amounttax"></td>
            </tr>` ;
          $(".items_table").append(itemRow);
        }
        function AddItem() {
          $("#btnAddItem").click(function(e) {
            //arrayItem
            var arrayItem = [];
            var sArrayItem = "";
        $.each($(".items_table .item-row"),function(index,value){
        let desc = $(this).find(".row-desc").val()
        let qty = $(this).find(".row-qty").val()
        let unitprice = $(this).find(".row-unitprice").val()
        let amount = $(this).find(".row-amount").val()
        let tax = $(this).find(".row-tax").val()
        let item = {
          ItemDesc: desc,
          ItemUnitPrice:unitprice,
          ItemQty: qty,
          TaxAmount: tax,
          ItemTotalAmount: amount,
        }
        arrayItem.push(item)
        });
            sArrayItem = JSON.stringify(arrayItem);
            $.ajax({
              type: "POST",
              url: "AddItem",
              data: JSON.stringify({
                sArrayItem
              }),
              contentType: "application/json; charset=utf-8",
              dataType: "json",
              success: function(result) {
                if (result.d.indexOf(".aspx") != -1)
                  window.location.href = result.d;
                else
                  showPopup(result);
              },
              failure: function(response) {
                alert(response.d);
              }
            });
          });
        };
        function calc(inputs) {
            //get all of the various input typs from the rows
            //each will be any array of elements
            var Quantitys = $('.row-qty');
            var UnitPrices = $('.row-unitprice');
            var Amounts = $('.row-amount');
//at result, I only able auto prompt the first row, he second row onwards it does not auto prompt the amount when user enter qty & unitprice.
            $.each($(".items_table .item-row"),function (i, value) {
                // get all the elements for the current row
                var Quantity = $(this).find('.row-qty').val();
                var UnitPrice = $(this).find('.row-unitprice').val();
                var Amount = $(this).find('.row-amount').val();
               
                ////// get the needed values from this row
                var qty = Quantity.val();
                qty = qty == '' ? 0 : qty; // if blank default to 0
                Quantity.val(qty); // set the value back, in case we had to remove soemthing
                var price = UnitPrice.val();
                price = price == '' ? 0 : price; // if blank default to 0
                UnitPrice.val(price); // set the value back, in case we had to remove soemthing
                // get/set row tax and total
                // also add to our totals for later
                var rowPrice = (UnitPrice * 1000) * Quantity
                var total = rowPrice
                Amount.val((total / 1000).toFixed(2));
            });
        }
 
     
    