Untitled
unknown
plain_text
5 months ago
4.0 kB
4
Indexable
<!DOCTYPE html> <html lang="es"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Formulario de País y Hora</title> </head> <body> <h1>Formulario de País y Hora</h1> <label for="pais">País:</label> <select id="pais" onchange="actualizarFechaHora()"> <option value="America/Argentina/Buenos_Aires">Argentina</option> <option value="America/Montevideo">Uruguay</option> <option value="America/La_Paz">Bolivia</option> <option value="America/Santiago">Chile</option> <option value="America/Lima">Perú</option> <option value="America/Asuncion">Paraguay</option> <option value="America/Panama">Panamá</option> <option value="America/Guayaquil">Ecuador</option> <option value="America/Caracas">Venezuela</option> <option value="America/El_Salvador">El Salvador</option> <option value="America/Guatemala">Guatemala</option> <option value="America/Tegucigalpa">Honduras</option> <option value="America/Costa_Rica">Costa Rica</option> <option value="America/Santo_Domingo">República Dominicana</option> </select> <br><br> <label for="fechaHoraActual">Fecha y Hora Actual:</label> <input type="text" id="fechaHoraActual" readonly> <br><br> <label for="cpt">Fecha y Hora CPT:</label> <input type="datetime-local" id="cpt"> <br><br> <label for="diferencia">Diferencia entre Fecha y Hora Actual y CPT:</label> <input type="text" id="diferencia" readonly> <br><br> <button onclick="actualizarDiferencia()">Aplicar cambios</button> <script> // Función para obtener la fecha y hora actual en la zona horaria seleccionada function actualizarFechaHora() { const pais = document.getElementById('pais').value; const fechaHoraActualInput = document.getElementById('fechaHoraActual'); const cptInput = document.getElementById('cpt'); // Obtiene la fecha y hora actual en la zona horaria seleccionada const ahora = new Date().toLocaleString('en-GB', { timeZone: pais, year: 'numeric', month: '2-digit', day: '2-digit', hour: '2-digit', minute: '2-digit', hour12: false // El formato se ajusta según el sistema }); // Actualiza el campo de fecha y hora actual fechaHoraActualInput.value = ahora; // Sincroniza el CPT con la fecha y hora actual del país seleccionado const now = new Date().toISOString().slice(0, 16); // Formato ISO para datetime-local cptInput.value = now; } // Función para calcular la diferencia entre la fecha y hora actual y la de CPT function actualizarDiferencia() { const pais = document.getElementById('pais').value; const cptInput = document.getElementById('cpt').value; const fechaHoraActualInput = document.getElementById('fechaHoraActual').value; const diferenciaInput = document.getElementById('diferencia'); // Convertimos la fecha y hora actual a un objeto Date const fechaActual = new Date(new Date().toLocaleString('en-US', { timeZone: pais })); const fechaCpt = new Date(cptInput); const diferenciaMs = Math.abs(fechaCpt - fechaActual); const diferenciaHoras = Math.floor(diferenciaMs / (1000 * 60 * 60)); const diferenciaMinutos = Math.floor((diferenciaMs % (1000 * 60 * 60)) / (1000 * 60)); diferenciaInput.value = `${diferenciaHoras} horas, ${diferenciaMinutos} minutos`; } // Inicializa la fecha y hora al cargar la página window.onload = actualizarFechaHora; </script> </body> </html>
Editor is loading...
Leave a Comment