Foros del Web » Programando para Internet » Javascript »

Realizar calculo en text form

Estas en el tema de Realizar calculo en text form en el foro de Javascript en Foros del Web. Saludos, tengo dos preguntas: 1ra, Estoy tratando de realizar un calculo en un campo tipo texto de mi formulario tomando los valores de otros dos ...
  #1 (permalink)  
Antiguo 11/09/2004, 22:37
 
Fecha de Ingreso: octubre-2003
Mensajes: 62
Antigüedad: 20 años, 6 meses
Puntos: 0
Realizar calculo en text form

Saludos, tengo dos preguntas:
1ra, Estoy tratando de realizar un calculo en un campo tipo texto de mi formulario tomando los valores de otros dos campos. Y cuando realiza el calculo lo que hace es poner los valores uno al lado del otro.
yo quiero que me present la suma de los dos valores no uno y despues el otro
el campo form1.p1 es tipo Select o menulist

Este es el script:

function calcula()
{
pr1 = document.form1.p1.value;
pr2 = document.form1.p2.value;
ppractica=(pr1 + pr2);
document.forms.form1.ppractica.value = ppractica;
}
y lo estoy ejecutando con : OnChange="return calcula()"

Lo otro es que el campo donde estoy enviando la suma lo estoy desabilitando con un OnLoad en el body con el siguiente script:

function atenua()
{
var s = 0;
document.forms.form1.ppractica.disabled = (s==0);
}
Esto me funciona bien, me lo pone disabled, pero cuando voy a enviar el valor a la BD en MySql+PHP, no envia nada, se va en blanco, que hago para que el campo el usuario no escribir, si no que el resultado se producto de un calculo y que a la vez me lo guarde en la base de datos.
Gracias..
  #2 (permalink)  
Antiguo 12/09/2004, 02:55
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 2 meses
Puntos: 772
Hola nestorvaldez.

Te contesto a la primera pregunta. Los valores que recoges de un cuadro de texto JavaScript los interpreta como cadenas, por eso los junta en vez de sumarlos. Tienes que pasarlos a valores numéricos:

pr1 = parseInt(document.form1.p1.value);
pr2 = parseInt(document.form1.p2.value);

Saludos,
  #3 (permalink)  
Antiguo 12/09/2004, 08:44
 
Fecha de Ingreso: octubre-2003
Mensajes: 62
Antigüedad: 20 años, 6 meses
Puntos: 0
Quien me puede ayudar con la 2da parte.
El campo donde estoy enviando la suma lo estoy desabilitando con un OnLoad en el body con el siguiente script:

function atenua()
{
var s = 0;
document.forms.form1.ppractica.disabled = (s==0);
}
Esto me funciona bien, me lo pone disabled, pero cuando voy a enviar el valor a la BD en MySql+PHP, no envia nada, se va en blanco, que hago para que en el campo el usuario no pueda escribir, si no que sea el resultado del producto de un calculo y que a la vez me lo guarde en la base de datos.
Gracias
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 19:54.