JavaScript - Asignar valores a campos ocultos

 
Vista:
sin imagen de perfil
Val: 1
Ha aumentado su posición en 41 puestos en JavaScript (en relación al último mes)
Gráfica de JavaScript

Asignar valores a campos ocultos

Publicado por Karla (1 intervención) el 17/11/2017 16:15:28
soy novata y aprendiendo cosas nuevas, quisiera que me ayudaran a solucionar mi problema, estoy trabajando con campos ocultos que se activan al ejecutar una acción.

los radiobutton se llaman asi:

pago_mensual: si selecciono si aparece un div oculto con un input text donde agrego un monto.
contribuciones: si selecciono si aparece un div oculto con un input text donde agrego un monto.
pagos_contables: si selecciono si aparece un div oculto con un input text donde agrego un monto.
y obviamente obtengo el total de todos los montos.

Además obtengo de la base de datos un monto X que al ingresar los datos ocultos se sumen o resten al resultado final, es decir MontoX+ pago1+pago+pago3, mi problema recae en que si pago_mensual selecciono si, todo bien por que me suma, si lo oculto resta, pero si lo vuelvo a activar me queda en el resultado final el total(bruto) y no vuelve a sumar.

Agrego código de lo que tengo, por que no se que estoy haciendo mal.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<form>
<div id="prueba">
     Total
     <input class="input-suma" id="bruto" name="bruto" type="number"  value="689000"/>
  <br>
  <label>Pago Mensual</label><br>
  <input type="radio" name="pago_mensual" value="1">Si<br>
  <input type="radio" name="pago_mensual" value="0" checked>No<br>
  <br>
  <label>Contribuciones</label><br>
  <input type="radio" name="contribuciones" value="1">Si<br>
  <input type="radio" name="contribuciones" value="0" checked>No<br>
  <br>
  <label>Pagos Contables</label><br>
  <input type="radio" name="pagos_contables" value="1">Si<br>
  <input type="radio" name="pagos_contables" value="0" checked>No<br>
  </form><br>
  <div id="div1" hidden>
      Pago mensual
     <input class="input-suma" id="pago1" name="pago1" type="number"  value=""/>
  </div><br>
  <div id="div2" hidden>
    Contribuciones
     <input class="input-suma" id="pago2" name="pago1" type="number"  value=""/>
  </div><br>
  <div id="div3" hidden>
     Pagos Contables
     <input class="input-suma" id="pago3" name="pago1" type="number"  value=""/>
  </div><br>
  Resultado:
  <input id="resultado" name="resultado" type="number"  value=""/>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
$(document).ready(function() {
 
  $('input[name=pago_mensual]').click(function (){
		if($(this).val()==1){
			$("#div1").show();
		}else{
			$("#div1").hide();
			sumar();
		}
	});
 
	$('.input-suma').keyup(function(){
  	sumar();
  });
 
function sumar(){
	var bruto= parseInt($("#bruto").val());
	var suma=ingreso;
	$('#input-suma').each(function(){
		if($(this).is(':visible') ){
			var val=$(this).val();
				if(!$(this).val() ) { val = 0 };
				suma=suma+parseInt(val);
		}
 
    })
  	$('#total').val(suma);
  }
 
});

Gracias, Karla
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder