jQuery – Traducir hora española a inglesa
Es muy común tener en un textbox de un formulario una fecha en español DD/MM/YYY, y queramos convertirla al formato inglés YYYY/MM/DD para poder trabajar con ella en JavScript. Veamos cómo traducir hora española a inglesa en jQuery
Por un lado imaginad que tenemos el formulario con el campo de fecha, que mediante un plugin nos deja una fecha en formato españo DD/MM/YYYY.
<form id="reserva" method="post" action=""> ... <input type="text" name="fecha" id="fecha" placeholder="DD/MM/YYYY" /> ... <input type="submit" value="Reservar" /> </form>
Manualmente o mediante plugin estilo DatePicker, se nos pondrá en el textbox una fecha en español: DD/MM/YYYY. Para tratarla en Javascript, deberemos ponerla en formato inglés: YYYY/MM/DD. Con el siguiente código lo haríamos:
// Cogemos el contenido del textbox y lo dividimos cogiendo el carácter / como separador partes= $('#fecha').val().split('/'); // Tenemos en la Array partes, en la primera posición (0) el día, en la (1) el mes y en la (2) el año. // Creamos un objeto date en Javascript pasándole en los parámetros el Año, el mes y por último el día. fechaescogida = new Date(partes[2],partes[1]-1,partes[0]); // Ya tenemos un objeto Date con el formato inglés para poder trabajar con él.
A partir de aquí pueden haber muchas combinaciones. Que el separador no sea / sino . como en Alemán. O que que los días, meses o años esten cambiados. En estos casos deberéis adaptar el códido. En definitiva, es coger el texto del campo del formulario y trabajarlo con la función split que los separa. Según el formato de fecha, deberemos separar por /, o por – y así tendremos el día, mes y año por separado. A partir de ahí, podemos trabajar con ellos.
Una de las acciones más necesitadas es tener la fecha en español DD/MM/YYY, y necesitarla en formato ingles YYY-MM-DD para poderla almacenar en MySql.
Espero que os sea de utilidad el artículo jQuery – Traducir hora española a inglesa
Más información