Foros del Web » Programando para Internet » Javascript »

duda sobre document.write

Estas en el tema de duda sobre document.write en el foro de Javascript en Foros del Web. Hola a todos mi duda es la siguiente: tengo el siguiente código q me muestra los dias q faltan hasta llegar a una fecha determinada. ...
  #1 (permalink)  
Antiguo 07/06/2004, 08:49
 
Fecha de Ingreso: diciembre-2003
Mensajes: 29
Antigüedad: 20 años, 11 meses
Puntos: 0
duda sobre document.write

Hola a todos mi duda es la siguiente:
tengo el siguiente código q me muestra los dias q faltan hasta llegar a una fecha determinada.

<SCRIPT LANGUAGE="JavaScript">
<!--
var date = new Date("july 1, 2004");
var description = " descubrir lo que esperabas";
var now = new Date();
var diff = date.getTime() - now.getTime();
var days = Math.floor(diff / (1000 * 60 * 60 * 24));
document.write("<font color=#facdae><center><h1>")
if (days > 1) {
document.write(days+1 + " dias para" + description);

Este códido me muestra Por ejemplo:
28 dias para descubrir lo que esperabas

Pero quiero que me muestre: "Faltan 28 dias"
entonces he puesto:
var description = " Faltan";
document.write(description + days+1 + " dias ");
y no me suma el "+1" simplemente me pone "281" ¿por que?
Muchas gracias de antemano.
  #2 (permalink)  
Antiguo 07/06/2004, 09:00
 
Fecha de Ingreso: septiembre-2002
Ubicación: Argentina
Mensajes: 144
Antigüedad: 22 años, 2 meses
Puntos: 0
Fijate si asi te sirve:

<SCRIPT LANGUAGE="JavaScript">
var date = new Date("july 1, 2004");
var description = " descubrir lo que esperabas";
var now = new Date();
var diff = date.getTime() - now.getTime();
var days = Math.floor(diff / (1000 * 60 * 60 * 24));
document.write("<font color=#facdae><center><h1>")
if (days > 1) {
document.write("Faltan ");
document.write(days+1 + " dias para" + description);
}
</script>
  #3 (permalink)  
Antiguo 07/06/2004, 09:03
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 23 años, 6 meses
Puntos: 25
Hola.

Prueba con esto.
Código:
document.write(description + (days+1) + " dias ");
  #4 (permalink)  
Antiguo 07/06/2004, 09:05
 
Fecha de Ingreso: mayo-2004
Mensajes: 75
Antigüedad: 20 años, 6 meses
Puntos: 2
Tu pones esto:

document.write(description + days+1 + " dias ");

Prueba a poner esto:

document.write(description + (days+1) + " dias ");

Lo que te pasa es que lo que tu pones hace que lo trate todo como string, concatenando uno tras otro los valores, si poner days+1 entre parentesis como son numericos primero los suma y luego los concatena al resto del texto.

¿te funciona asi?
  #5 (permalink)  
Antiguo 07/06/2004, 09:12
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 23 años, 6 meses
Puntos: 25
Hola sonia

Te me he adelantado!

Embersi, cambia esto también:
Código:
if (days >= 0)
Si no, cuando falta un día o dos no pone nada.

Un saludo.
  #6 (permalink)  
Antiguo 07/06/2004, 09:39
 
Fecha de Ingreso: diciembre-2003
Mensajes: 29
Antigüedad: 20 años, 11 meses
Puntos: 0
duda

Gracias a todos, me ha funcionado la solución que me habeis dado, gracias otra vez.
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 18:26.