Foros del Web » Programando para Internet » Javascript »

ayuda con un calculo matematico

Estas en el tema de ayuda con un calculo matematico en el foro de Javascript en Foros del Web. tengo un formulario de remuneraciones que me realiza todos los calculos bien pero necesito que en un campo el usuario mediante un checkbox seleccione si ...
  #1 (permalink)  
Antiguo 05/01/2010, 12:25
 
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 143
Antigüedad: 14 años, 11 meses
Puntos: 2
ayuda con un calculo matematico

tengo un formulario de remuneraciones que me realiza todos los calculos bien pero necesito que en un campo el usuario mediante un checkbox seleccione si desea ese resultado o que el resultado sea 0 y necesito una idea de como hacerlo ya que soy nuevo en esto de javascript. probe con un if pero no me funciona.
  #2 (permalink)  
Antiguo 05/01/2010, 12:29
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: ayuda con un calculo matematico

para acceder al valor del checkbox el mismo necesita como minimo un id y puedes acceder a él a través del mismo con:

en el html:
<input type="checkbox" id="id_del_checkbox" />

en la funcion Javascript:
var micheckbox = document.getElementById('id_del_checkbox');

if(micheckbox.checked)
  #3 (permalink)  
Antiguo 05/01/2010, 12:44
 
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 143
Antigüedad: 14 años, 11 meses
Puntos: 2
Respuesta: ayuda con un calculo matematico

mira este es el codigo que estoy provando pero no me funciona

Código Javascript:
Ver original
  1. calcular=parseInt(document.getElementById("calcular").value);
  2.  
  3.  
  4. if('calcular'=="")|| ('calcular'== null))
  5. {
  6. document.getElementById("seguro").value=0;
  7. }
  8. else
  9. {
  10. document.getElementById("seguro").value=(total_impo)*0.60/100;
  11. }
  #4 (permalink)  
Antiguo 05/01/2010, 12:47
Avatar de maycolalvarez
Colaborador
 
Fecha de Ingreso: julio-2008
Ubicación: Caracas
Mensajes: 12.120
Antigüedad: 16 años, 3 meses
Puntos: 1532
Respuesta: ayuda con un calculo matematico

Cita:
Iniciado por Rasec101 Ver Mensaje

var para declarar variables,
las varibles sin las comillas, las tomara como cadenas.
es preferible parseFloat dependiendo del caso

Código Javascript:
Ver original
  1. var calcular=parseInt(document.getElementById("calcular").value); //¿o checked?
  2.  
  3.  
  4. if(calcular=="")|| (calcular== null))
  5. {
  6. document.getElementById("seguro").value=0;
  7. }
  8. else
  9. {
  10. document.getElementById("seguro").value=(total_impo)*0.60/100;
  11. }
si calcular es un checkbox la propiedad adecuada es checked que devolverá true o false, value sólo se devuelve al servidor si el form es enviado y el checkbox está seleccionado
  #5 (permalink)  
Antiguo 05/01/2010, 13:19
 
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 143
Antigüedad: 14 años, 11 meses
Puntos: 2
Respuesta: ayuda con un calculo matematico

disculpa pero me aparece un mensage de error de sintaxis mira este es el checkbox
Código HTML:
Ver original
  1. <input name="calcular" type="checkbox" id="calcular" checked />
y este es el codigo javascript
Código Javascript:
Ver original
  1. var calcular=parseInt(document.getElementById("calcular").checked);
  2.        
  3.        
  4.       if(calcular=="")|| (calcular== null))
  5.       {
  6.       document.getElementById("seguro").value=0;
  7.       }
  8.       else
  9.       {
  10.       document.getElementById("seguro").value=(total_impo)*0.60/100;
  11.       }

los campos seguro y total_impo estan correctos no se que problema tengo
  #6 (permalink)  
Antiguo 05/01/2010, 13:27
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 23 años, 2 meses
Puntos: 381
Respuesta: ayuda con un calculo matematico

Código:
var calcular=parseInt(document.getElementById("calcular").checked);
Así, por decir algo, prueba a asignarle otro nombre a esa variable

Código:
var calcular2=parseInt(document.getElementById("calcular").checked);
  #7 (permalink)  
Antiguo 05/01/2010, 14:11
 
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 143
Antigüedad: 14 años, 11 meses
Puntos: 2
Respuesta: ayuda con un calculo matematico

ahora no me manda error pero me retorna 0
  #8 (permalink)  
Antiguo 05/01/2010, 14:33
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 23 años, 2 meses
Puntos: 381
Respuesta: ayuda con un calculo matematico

Cita:
Iniciado por Rasec101 Ver Mensaje
ahora no me manda error pero me retorna 0
Ya es algo

mira, esto

document.getElementById("calcular").checked

sólo tiene dos opciones a devolver: true o false, por lo tanto no hay lugar para parsearlo a entero.

No tengo claro si con esa expresión quieres saber si el campo está o no chequeado o si quieres sacar su value.

Si és lo primero te bastaría con

var calcular2=document.getElementById("calcular").chec ked;

que te devolvería true o false


Código:
if(calcular2) //si está checkado

      {

      document.getElementById("seguro").value=0;

}
  #9 (permalink)  
Antiguo 05/01/2010, 15:05
 
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 143
Antigüedad: 14 años, 11 meses
Puntos: 2
Respuesta: ayuda con un calculo matematico

gracias tunait ahora me funciona perfecto
  #10 (permalink)  
Antiguo 05/01/2010, 15:27
Avatar de tunait
Moderadora
 
Fecha de Ingreso: agosto-2001
Ubicación: Terok Nor
Mensajes: 16.805
Antigüedad: 23 años, 2 meses
Puntos: 381
Respuesta: ayuda con un calculo matematico

De nada

si quieres podrías reducirlo a una sola sentencia

Código:
document.getElementById("seguro").value = document.getElementById("calcular").checked ? 0 : (total_impo)*0.60/100;
Saludos!
  #11 (permalink)  
Antiguo 05/01/2010, 15:35
 
Fecha de Ingreso: diciembre-2009
Ubicación: Santiago, Chile
Mensajes: 143
Antigüedad: 14 años, 11 meses
Puntos: 2
Respuesta: ayuda con un calculo matematico

lo voy a probar pero sera para mañana ya concluyo mi jornada asta luegos y gracias

Etiquetas: calculo, matematico
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:06.