elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía actualizada para evitar que un ransomware ataque tu empresa


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web (Moderador: #!drvy)
| | |-+  Solo muestra la fecha de un input date en chrome y no en firefox JS
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Solo muestra la fecha de un input date en chrome y no en firefox JS  (Leído 2,794 veces)
SrTrp


Desconectado Desconectado

Mensajes: 325


Script/C#


Ver Perfil
Solo muestra la fecha de un input date en chrome y no en firefox JS
« en: 17 Agosto 2021, 04:49 am »

Hola que tal estoy calculando la fecha con un input type date, pero este solo me da la fecha en chrome en firefox solo aparece NaN-NaN-NaN, y en chrome si me da la fecha correcta.
este es mi input:
Código
  1. <input type="date" id="fecha_1" min="<?php echo $fecha_hoy;  ?>" max="2023-01-01" />
  2.  
Y este es mi JS
Código
  1. const dias = [
  2.  'domingo',
  3.  'lunes',
  4.  'martes',
  5.  'miércoles',
  6.  'jueves',
  7.  'viernes',
  8.  'sábado',
  9.  'domingo',
  10. ];
  11. const meses = [
  12.  'enero',
  13.  'febrero',
  14.  'marzo',
  15.  'abril',
  16.  'mayo',
  17.  'junio',
  18.  'julio',
  19.  'agosto',
  20.  'septiembre',
  21.  'octubre',
  22.  'noviembre',
  23.  'diciembre',
  24. ];
  25. $("#fecha_1").on("input", function(){
  26. get_date();
  27. });
  28.  
  29. function get_date(){
  30.  limpiar();
  31.  var string_fecha = $("#fecha_1").val().substring(5,7)+"-"+$("#fecha_1").val().substring(8,10)+"-"+$("#fecha_1").val().substring(0,4);
  32. var dia = new Date(string_fecha).getDate();
  33.  var dian = new Date(string_fecha).getDay();
  34. var mes = new Date(string_fecha).getMonth()+1;
  35. var año = new Date(string_fecha).getFullYear();
  36. document.getElementById("txt_h1").innerText = "Has selecionado el dia: " +dias[dian]+" "+dia+" de "+meses[mes-1]+" del "+año;
  37.  var fecha_envio = "";
  38.  var fecha_real="";
  39.  if(mes<10 && dia >=10){
  40.   fecha_envio = año+"-0"+mes+"-"+dia+"T09:00:00-06:00";
  41.   fecha_real = año+"-0"+mes+"-"+dia;
  42.  }else if(dia<10 && mes>=10){
  43.   fecha_envio = año+"-"+mes+"-0"+dia+"T09:00:00-06:00";  
  44.   fecha_real = año+"-"+mes+"-0"+dia;
  45.  }else if(mes<10 && dia<10){
  46.   fecha_envio = año+"-0"+mes+"-0"+dia+"T09:00:00-06:00";  
  47.   fecha_real = año+"-0"+mes+"-0"+dia;
  48.  }else{
  49.    fecha_envio = año+"-"+mes+"-"+dia+"T09:00:00-06:00";  
  50.    fecha_real = año+"-"+mes+"-"+dia;
  51.  }
  52. console.log(fecha_envio+"");
  53.    var formdat = new FormData();
  54.    formdat.append('fecha', fecha_envio);    
  55.    formdat.append('tipo', "0");    
  56.    $.ajax({      
  57.        data: formdat,
  58.        url: '../googlecalendar/gestorc.php',
  59.        type: 'POST',
  60.        contentType: false,
  61.        processData: false,
  62.        success: function(data){
  63.         response = JSON.parse(data);
  64.          document.getElementById("tb_manager").style.visibility = "visible";
  65.           document.getElementById("tb_manager").style.display = "";        
  66.        }
  67.    });  
  68. }
  69.  


En línea

SrTrp


Desconectado Desconectado

Mensajes: 325


Script/C#


Ver Perfil
Re: Solo muestra la fecha de un input date en chrome y no en firefox JS
« Respuesta #1 en: 17 Agosto 2021, 06:20 am »

Ya lo resolví por una extraña razón tal como asigno la fecha en chrome si me lo acepta pero en firefox no, la solución que encontré fue establecer la fecha así 
Código:
new Date(2005,05,25);
osea establecer los valores como enteros y por separado.


En línea

3n31ch


Desconectado Desconectado

Mensajes: 445


Grandes conocimientos engendran grandes dudas


Ver Perfil
Re: Solo muestra la fecha de un input date en chrome y no en firefox JS
« Respuesta #2 en: 22 Agosto 2021, 05:16 am »

A modo de mas información, existen ciertas normas especificas de EMCAScript y otras organizaciones sobre lo que debe o no entender un navegador web. Muchas veces estas aplicaciones quedan abiertas a nuevas incorporaciones, osea: Debe entender esto, pero aparte puede entender cualquier otra cosa que considere implementar cada interprete (browrser). Es por esto que hay veces que se presentan estas diferencias (en su mayoría con css).

Por lo regular yo desarrollo usando Firefox como navegador de prueba, y luego me voy a otros, esto es porque hasta ahora he encontrado que firefox es mas "estándar". Chrome suele ser mas flexible, así que si me funciona en firefox se que (en su mayoría) me funcionará en el resto de navegadores actuales. (Omitiendo claro, internet explorer)

PD: A modo personal te recomiendo cambiar el <?php echo $fecha_hoy; ?> por <?= $fecha_hoy ?>.

PD2: Quizás otra recomendación sea usar let/const en vez de var y dejar de usar jquery (JQuery es el demonio  :D).

PD3: Espero no ser un pesado dando recomendaciones no pedidas.  :-X

Saludos!
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Error con java.util.Date fecha incorrecta
Java
cyberserver 5 9,152 Último mensaje 31 Octubre 2010, 07:07 am
por benek
Chrome se cierra solo (y Firefox también)
Software
aaronduran2 1 1,434 Último mensaje 19 Noviembre 2013, 17:16 pm
por Saberuneko
PHP Cambiar fecha cadena a date
PHP
tomasvreal28 5 2,509 Último mensaje 5 Diciembre 2015, 03:54 am
por tomasvreal28
obtener la fecha actual java.sql.Date
Java
Yager2222 3 4,952 Último mensaje 4 Junio 2020, 19:46 pm
por rub'n
Por que me muestra menos dias y mes input date javascript
Desarrollo Web
SrTrp 3 3,348 Último mensaje 6 Noviembre 2020, 01:53 am
por EdePC
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines