Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/09/2012, 16:20
Avatar de Briss
Briss
 
Fecha de Ingreso: junio-2011
Mensajes: 1.293
Antigüedad: 12 años, 10 meses
Puntos: 12
Actualizar valores en suma

Hola a todos tengo un formulario donde voy a realizar una suma
son 3 inputs a lado tienen un checkbox con el texto Activar por defecto esta seleccionado, si se desmarca pone 0 en el input correspondiente

Esto lo hago asi
Código HTML:
<script type="text/javascript">
    function Cambia(porcentaje)
  {   
   if(porcentaje.checked)
    {
      document.for1m.p1.value="";
	  
    }
   else
    {
      document.form1.p1.value="0";
	 
    }
	
  }
</script>

<script type="text/javascript">
    function Cambia2(porcentaje)
  {   
   if(porcentaje.checked)
    {
      document.for1m.p2.value="";
	  
    }
   else
    {
      document.form1.p2.value="0";
	 
    }
	
  }
</script>

<script type="text/javascript">
    function Cambia3(porcentaje)
  {   
   if(porcentaje.checked)
    {
      document.for1m.p3.value="";
	  
    }
   else
    {
      document.form1.p3.value="0";
	 
    }
	
  }
</script> 

Y la suma asi

Código HTML:
<script> 
function sumar() {
	elem_1 = (isNaN(document.form1["p1"].value) || document.form1["p1"].value == "") ? "0" : document.form1["p1"].value;
	elem_2 = (isNaN(document.form1["p2"].value) || document.form1["p2"].value == "") ? "0" : document.form1["p2"].value;
	elem_3 = (isNaN(document.form1["p3"].value) || document.form1["p3"].value == "") ? "0" : document.form1["p3"].value;
	
	document.form1.total.value = parseInt(elem_1) + parseInt(elem_2)+parseInt(elem_3) ;
}
</script> 

Ambos script funcionan Pero si primero por ejemplo en el input p1 pongo 5
y desactivo el checkbox (osea lo cambio a 0)
en la suma me sigue tomando ese mismo 5 (cuando en realidad ya es 0 porque se desactivo el checkbox) esto afecta el resultado de la suma pues no actualiza el valor del total....



Algun me puede decir que estoy haciendo mal
Gracias de antemano