Foros del Web » Programando para Internet » Javascript »

No se muestra informacion en un TEXT

Estas en el tema de No se muestra informacion en un TEXT en el foro de Javascript en Foros del Web. Hola Amigos, tengo el siguiente script y mi problema es que el ultimo INPUT TEXT no muestra los esultados de la suma que se efectua ...
  #1 (permalink)  
Antiguo 03/01/2010, 19:55
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 3 meses
Puntos: 3
No se muestra informacion en un TEXT

Hola Amigos, tengo el siguiente script y mi problema es que el ultimo INPUT TEXT no muestra los esultados de la suma que se efectua en javascript, no se si alguien tiene idea del porque no funciona:
Código PHP:
<html
 <
head> <script language="JavaScript"
   function 
sum(){ 
    var 
0;
    var 
Number(document.frm.text1.value);
    
*0.2;
    if (
document.frm.chk1.checked){ 
     
10
    }
    if (
document.frm.chk2.checked){ 
     
20
    }
   } 
  
</script> </head> 
 <body> 
  <form name="frm">
   <input type="text" name="text1" size=10>
   <input type="checkbox" name="chk1">Selector<br> 
   <input type="checkbox" name="chk2">Selector<br>
   <input type="text" name="text2" size=10>
   <input type="button" value="total" onClick="document.frm.text2.value = a">
  </form> 
 </body> 
</html> 
De antemano gracias por su ayuda
  #2 (permalink)  
Antiguo 04/01/2010, 00:39
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Respuesta: No se muestra informacion en un TEXT

Hola:

No me he fijado en la sintaxis, pero suponiendo que esté bien, no se ve cuando haces la llamada... tal vez te falte algo...

<input type="button" value="total" onclick="sum(); document.frm.text2.value = a">

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #3 (permalink)  
Antiguo 04/01/2010, 09:38
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 3 meses
Puntos: 3
Respuesta: No se muestra informacion en un TEXT

Hola Caricatos, lo que me dices de poner el SUM() tienes toda la razon, ya lo puse, pero sigue sin salirme nada de despuesta, creo que el error es en el codigo javascript, no se si tu tienes alguna idea de cual es el error?
  #4 (permalink)  
Antiguo 04/01/2010, 09:52
Avatar de ceSharp  
Fecha de Ingreso: octubre-2008
Ubicación: Madrid
Mensajes: 495
Antigüedad: 15 años, 6 meses
Puntos: 66
Respuesta: No se muestra informacion en un TEXT

hola diego,

lo que veo que pasa es que estás llamando a una variable local (tu variable llamada a) como si fuera una variable global.

Me explico. Si declaras a dentro de una función (var a = 0;) solo la puedes usar en ese método. Cuando desde el boton llamas a document.frm.text2.value = a no estás llamando a esa función; vamos que le estás diciendo que el textbox tenga el valor de a, pero no la encuentra porque es una variable de la función sum(), entiendes?

solución? saca a de la función, es decir, la declaras fuera de la funcion:
-------------------------------
var a = 0;

function sum()
{ //aquí ya no tienes que declararla si no quieres, pues ahora mismo sería global
................
}
------------------------------------

prueba y nos cuentas.
por cierto, un consejo. No llames a tus variables a, b, c, d.... porque cuando tengas que crear múltiples variables te liarás. Es recomendable darlas un nombre concreto y específico (sumando1, sumador, etc)

salu2
  #5 (permalink)  
Antiguo 04/01/2010, 13:20
 
Fecha de Ingreso: enero-2009
Ubicación: en la casa
Mensajes: 223
Antigüedad: 15 años, 3 meses
Puntos: 3
Respuesta: No se muestra informacion en un TEXT

Hola ceSharp, muchas gracias, ese mismo fue mi pequeño error :) y tomare en cuenta tu recomendacion con las variables. Muchas gracias por tu ayuda

Etiquetas: informacion, muestra, txt
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 06:50.