Foros del Web » Programando para Internet » Javascript »

validar dia

Estas en el tema de validar dia en el foro de Javascript en Foros del Web. Holas a todos, sera q existe una funcion en javascript q yo le pase como parametro un afecha y me devuelva q dia de la ...
  #1 (permalink)  
Antiguo 07/07/2006, 14:33
Avatar de Mirovita  
Fecha de Ingreso: febrero-2005
Ubicación: Caracas-Venezuela
Mensajes: 840
Antigüedad: 19 años, 1 mes
Puntos: 10
validar dia

Holas a todos,

sera q existe una funcion en javascript q yo le pase como parametro un afecha y me devuelva q dia de la semana es?

por ejemplo:

fecha: 10/07/2006

y que la funcion me devuelva q es lunes...

gracias
__________________
.-._.-. [email protected]._.-.

Última edición por Mirovita; 10/07/2006 a las 07:18
  #2 (permalink)  
Antiguo 10/07/2006, 07:20
Avatar de Mirovita  
Fecha de Ingreso: febrero-2005
Ubicación: Caracas-Venezuela
Mensajes: 840
Antigüedad: 19 años, 1 mes
Puntos: 10
alguien sabe como hacer para q despues q yo vea si el dia es lunes y despues verifique otro dia me diga si es de la misma semana?

me explico?

gracias
__________________
.-._.-. [email protected]._.-.
  #3 (permalink)  
Antiguo 10/07/2006, 08:40
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

Usando tu ejemplo:

var fecha = "10/07/2006"

Podemos crear una función...
function dia(fecha) {
var dia = ["Domingo", "Lunes", "Martes", "Miércoles", "Jueves", "Viernes", "Sabado"];
datos = fecha.split("/"); // convertimis la cadena en un array
f = new Date(); // creamos un objeto Date()
f.setFullYear(datos[2]; // asignamos nuevo año
f.setMonth(datos[1]); // asignamos nuevo mes
f.setDate(datos[0]); // asignamos nuevo día
return dia[f.getDay()]
}

Lo puse "a capella" así que puede yener errores, pero pruébalo y nos cuentas.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #4 (permalink)  
Antiguo 10/07/2006, 08:53
Avatar de Mirovita  
Fecha de Ingreso: febrero-2005
Ubicación: Caracas-Venezuela
Mensajes: 840
Antigüedad: 19 años, 1 mes
Puntos: 10
no no me funciona, te explico lo q hice.
yo tengo un afuncion en javascript q me coloca en unos text box la fecha de esta semana y lo q quiero es q al hacer onchange en ese text box me valide q la nueva fecha sea lunes en el primero y domingo de la misma semana en el segundo:
pero cuando uso eso q me diste no parece ni la fecha de la semana actual q antes si aparecia... entiendes? gracias
__________________
.-._.-. [email protected]._.-.
  #5 (permalink)  
Antiguo 10/07/2006, 09:06
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

Te dije que estaba "a capella", o sea improvisado, por tanto podía tener errores, y el error que tenía era que faltaba cerrar la función de asignación del nuevo año:
f.setFullYear(datos[2]); // asignamos nuevo año

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #6 (permalink)  
Antiguo 10/07/2006, 09:07
Avatar de Mirovita  
Fecha de Ingreso: febrero-2005
Ubicación: Caracas-Venezuela
Mensajes: 840
Antigüedad: 19 años, 1 mes
Puntos: 10
Si me dice pero no el dia q es, por ejemplo mañana 11 es martes y me sale viernes... hay dios q vida la mia conjavascript...ahora q hago, no se...


como hago para ver si el domingo es de esa misma semana?
p:d: disculpa por no haberme fijado en los errores.
__________________
.-._.-. [email protected]._.-.

Última edición por Mirovita; 10/07/2006 a las 09:16
  #7 (permalink)  
Antiguo 10/07/2006, 09:13
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

Los objetos Date tienen el método getDay() que devuelve un número entre 0 y 7 donde el 0 se corresponde con el domingo y así...
En teoría, restándole el valor getDay() a la fecha, tendrá que devolver el domingo de esa semana (y a éste, sumándole 7 se obtendría el siguiente domingo...

Espero que te sirva.

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #8 (permalink)  
Antiguo 10/07/2006, 09:24
Avatar de Mirovita  
Fecha de Ingreso: febrero-2005
Ubicación: Caracas-Venezuela
Mensajes: 840
Antigüedad: 19 años, 1 mes
Puntos: 10
ok fijate lo q sucede, si no uso el del mes y el año me dice el dia exacto de la fecha q coloque, pero si cambio el mes no me da el dia exacto, si uso lo del mas y el año no me dice el dia exacto ni de este mes...
__________________
.-._.-. [email protected]._.-.
  #9 (permalink)  
Antiguo 10/07/2006, 09:28
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
Hola:

No me dí cuenta de un pequeño detalle... Como los arrays suelen empezar por 0, el mes de enero tendría que ser 0 y no 1

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #10 (permalink)  
Antiguo 10/07/2006, 09:36
Avatar de Mirovita  
Fecha de Ingreso: febrero-2005
Ubicación: Caracas-Venezuela
Mensajes: 840
Antigüedad: 19 años, 1 mes
Puntos: 10
ok te pido un poco de paciencia porq no se mucho (yo diria q casi nada) de javascript y cuando creo estar entendiendo la vaina me sales con otra, a ver si entedi, yo pense q esto:

f.setDate(datos[0]); // asignamos nuevo día
f.setMonth(datos[1]); // asignamos nuevo mes
f.setFullYear(datos[2]); // asignamos nuevo año

es q le asigno el valor 0, 1 y 2 de datos a la variable f, si es asi como arreglo lo del mes, sino es porq en vez de f.setMonth(datos[1]); sera f.setMonth(datos[0]);....(si es asi igual no me funciona)

si dije un disparat te pido me disculpes...
__________________
.-._.-. [email protected]._.-.
  #11 (permalink)  
Antiguo 10/07/2006, 09:49
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 22 años
Puntos: 1284
¡Je, je! ¡No te preocupes que soy bastante paciente!, además, no me gusta dar el código "hecho" y ser más didáctico...

El índice es del array en que se convierte la cadena de la fecha, entonces es el correcto, pero lo que no es correcto es el mes que representa ya que si
datos[1] devuelve "01" (una cadena de texto), ese 01 no representa a enero sino a febrero, por lo que se debería restar 1:

f.setMonth(--parseInt(datos[1])); // asignamos nuevo mes

o...

f.setMonth(parseInt(datos[1]) - 1); // asignamos nuevo mes

Saludos
__________________
Por favor:
No hagan preguntas de temas de foros en mensajes privados... no las respondo
  #12 (permalink)  
Antiguo 10/07/2006, 09:52
Avatar de Mirovita  
Fecha de Ingreso: febrero-2005
Ubicación: Caracas-Venezuela
Mensajes: 840
Antigüedad: 19 años, 1 mes
Puntos: 10
ok, entoces no estaba tan mal, bueno si perono taaaaaaaaaaaaaanto, gracias por explicar asi voy entendio mejor q hacen las cosas, ahora si funciona sos un sol ahora voy a probar lo de los domingos...
__________________
.-._.-. [email protected]._.-.
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 05:55.