I am new to JQuery, Adding dynamic row to my html table with following code
function addRow() {
  var root = document.getElementById('mytab').getElementsByTagName('tbody')[0];
  var rows = root.getElementsByTagName('tr');
  var clone = cloneEl(rows[rows.length - 1]);
  cleanUpInputs(clone);
  root.appendChild(clone);
}
function addColumn() {
  var rows = document.getElementById('mytab').getElementsByTagName('tr'), i = 0, r, c, clone;
    while (r = rows[i++]) {
      c = r.getElementsByTagName('td');
      clone = cloneEl(c[c.length - 1]);
      cleanUpInputs(clone);
      c[0].parentNode.appendChild(clone);
    }
}
function cloneEl(el) {
  var clo = el.cloneNode(true);
  return clo;
}
function cleanUpInputs(obj) {
  for (var i = 0; n = obj.childNodes[i]; ++i) {
    if (n.childNodes && n.tagName != 'INPUT') {
      cleanUpInputs(n);
    } else if (n.tagName == 'INPUT' && n.type == 'text') {
      n.value = '';
    }
  }  
}
My html looks like this
<table id="mytab" class="table table-bordered payment_table">
                                    <thead class="bg-header">
                                        <tr>
                                            <th colspan="4">Bill Details</th>
                                        </tr>
                                    </thead>
                                    <tbody class="form-tbody">
                                        <tr>
                                            <th class="text-center">Quantity</th>
                                            <th class="text-center">Rate/Item</th>
                                            <th class="text-center">Total</th>  
                                            <th class="text-center">Description</th>                                            
                                        </tr>
                                        <tr>
                                            <td><input type="text" id="quantity" name="quantity" class="form-control"></td>
                                            <td><input type="text" id="rate" name="rate" class="form-control"></td>
                                            <td><input type="text" id="total" name="total" class="form-control"></td>
                                            <td><input type="text" id="desc" name="desc" class="form-control"></td>
                                        </tr>
                                    </tbody>
                                    <td><input type="button" class="btn btn-primary" value="Add" onclick="addRow()"></td>
                                </table>
i am doing quantity*rate/item=total by using jquery following line of code
$(document).ready(function(){
        $(document).on('keyup','#rate',function(){
            var rate = $("#rate").val();
            var quantity = $("#quantity").val();
            var total = rate*quantity;
            $('#total').val(total);
        });
    });
it works fine for first row but do not works for added rows. I have tried "+" with my id but still it did not work. Also input fields are created with name when added dynamically.How to handle this to save data at Server end. Need Help!!!
 
    