Eventos Delegados

Cómo asignar un event listener a elementos que aún no existen https://canela.me/node/39/

by Carlos Canela

HTML

<link rel="stylesheet" href="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/css/bootstrap.min.css">
<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.0/umd/popper.min.js"></script>
<script src="//stackpath.bootstrapcdn.com/bootstrap/4.1.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<!-- 
  Bootstrap docs: https://getbootstrap.com/docs
-->

<div class="container">
  <div class="row">
    <div class="col">
    <button type="button" id="add_row_btn" class="btn btn-primary btn-lg btn-block mt-3 mb-3">Agregar nueva Fila</button>
      <div class="input-group mb-3">
        <input type="number" class="form-control" placeholder="Ingresa un valor para sumarlo a sí mismo">
        <div class="input-group-append">
          <button class="btn btn-outline-secondary sumar_btn" type="button" id="button-addon2">Sumar</button>
        </div>
      </div>
    </div>
  </div>
</div>

JavaScript

$(function(){
//boton clonar elemento
	$("#add_row_btn").on('click',function(){
		$(".container .row .col").append($(".input-group:first").clone())
	})
	//funcion de suma en boton
  $(".container .row .col").on('click','.input-group .sumar_btn',function(){
  	var num=$( this).parents('.input-group').find('input[type="number"]').val();
    num=parseInt(num)+parseInt(num);
    $( this).parents('.input-group').find('input[type="number"]').val(num)
  })
})