You are viewing limited content. For full access, please sign in.

Question

Question

Forms Table : How to catch the event row deleted ?

asked on February 19, 2016

I ve got

  • a table (q4) of product with a price (q8) at the end of each line.
  • A subtotal field (q11) wich is the sum of the price column.

If I add or update a row everyting works great but if I remove a line I need to update my sum. and it doesn't work.

$('#q4').on('click','.form-del-field',updateTotal);

here's my full  js :

$(function(){
  function round(val){
  	return Math.round(val * 100) / 100;
  }
  
  function updateTotal () {
  	var sum = 0; 
    	$('[id^=Field8\\(]').each(function(){
          var val = $(this).val() === '' ? 0 : parseFloat($(this).val());
    	  sum += val; 
        });
    	$('#Field11').val(round(sum));
  }
  
  function deleteLine(){
   alert('DELETE'); 
  }
  
  $(document).on('change', '[id^=Field7\\(]', function(){
  	var index = $('[id^=Field7\\(]').index($(this));
    	if ($('[id^=Field6\\(]').eq(index).val() === '' || isNaN($('[id^=Field6\\(]').eq(index).val()))
          return;
        $('[id^=Field8\\(]').eq(index).val(round($(this).val() * $('[id^=Field6\\(]').eq(index).val()));
    	updateTotal();
  });
  
  $(document).on('change', '[id^=Field6\\(]', function(){
  	var index = $('[id^=Field6\\(]').index($(this));
    	if ($('[id^=Field7\\(]').eq(index).val() === '' || isNaN($('[id^=Field7\\(]').eq(index).val()))
          return;
        $('[id^=Field8\\(]').eq(index).val(round($(this).val() * $('[id^=Field7\\(]').eq(index).val()));
    	updateTotal();
  });
  
  $(document).on('keyup', '[id^=Field6\\(], [id^=Field8\\(]', function(){
  	if ($(this).val().indexOf('-') !== -1)
          $(this).val($(this).val().replace(/-/g, ''));
  });
  
  $(document).on('change', '[id^=Field8\\(]', updateTotal);
  $('#q4').on('click','.form-del-field',updateTotal);
  
  
  
  //$('#Field8').attr('readonly', 'readonly');
})

 

Thanks for your help.

0 0

Answer

SELECTED ANSWER
replied on February 19, 2016

Instead of that I catch all click event on the tab and it works.

I ve add a TableProducts class on my table.

$(".TabProducts").on("click", updateTotal);

 

0 0

Replies

You are not allowed to reply in this post.
You are not allowed to follow up in this post.

Sign in to reply to this post.